#
tokens: 49224/50000 14/958 files (page 10/236)
lines: on (toggle) GitHub
raw markdown copy reset
This is page 10 of 236. Use http://codebase.md/seanivore/mcp-code-analyzer?lines=true&page={x} to view the full context.

# Directory Structure

```
├── .DS_Store
├── .gitignore
├── bin
│   └── mcp-code-analyzer.js
├── dist
│   ├── mcp_code_analyzer-0.1.0-py3-none-any.whl
│   └── mcp_code_analyzer-0.1.0.tar.gz
├── LICENSE
├── package-lock.json
├── package.json
├── pyproject.toml
├── README.md
├── setup.py
├── src
│   ├── index.ts
│   └── mcp_code_analyzer
│       ├── __init__.py
│       ├── __main__.py
│       ├── __pycache__
│       │   ├── __init__.cpython-311.pyc
│       │   └── server.cpython-311.pyc
│       └── server.py
├── test_analyzer.py
├── test_code.py
├── test_package.py
├── test.py
├── tsconfig.json
└── venv
    ├── bin
    │   ├── activate
    │   ├── activate.csh
    │   ├── activate.fish
    │   ├── Activate.ps1
    │   ├── hatchling
    │   ├── pip
    │   ├── pip3
    │   ├── pip3.11
    │   ├── pyproject-build
    │   ├── python
    │   ├── python3
    │   └── python3.11
    ├── lib
    │   └── python3.11
    │       └── site-packages
    │           ├── _distutils_hack
    │           │   ├── __init__.py
    │           │   ├── __pycache__
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   └── override.cpython-311.pyc
    │           │   └── override.py
    │           ├── _mcp_code_analyzer.pth
    │           ├── build-1.2.2.post1.dist-info
    │           │   ├── entry_points.txt
    │           │   ├── INSTALLER
    │           │   ├── LICENSE
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   ├── REQUESTED
    │           │   └── WHEEL
    │           ├── distutils-precedence.pth
    │           ├── hatchling
    │           │   ├── __about__.py
    │           │   ├── __init__.py
    │           │   ├── __main__.py
    │           │   ├── __pycache__
    │           │   │   ├── __about__.cpython-311.pyc
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   ├── __main__.cpython-311.pyc
    │           │   │   ├── build.cpython-311.pyc
    │           │   │   └── ouroboros.cpython-311.pyc
    │           │   ├── bridge
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   └── app.cpython-311.pyc
    │           │   │   └── app.py
    │           │   ├── build.py
    │           │   ├── builders
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── app.cpython-311.pyc
    │           │   │   │   ├── binary.cpython-311.pyc
    │           │   │   │   ├── config.cpython-311.pyc
    │           │   │   │   ├── constants.cpython-311.pyc
    │           │   │   │   ├── custom.cpython-311.pyc
    │           │   │   │   ├── macos.cpython-311.pyc
    │           │   │   │   ├── sdist.cpython-311.pyc
    │           │   │   │   ├── utils.cpython-311.pyc
    │           │   │   │   └── wheel.cpython-311.pyc
    │           │   │   ├── app.py
    │           │   │   ├── binary.py
    │           │   │   ├── config.py
    │           │   │   ├── constants.py
    │           │   │   ├── custom.py
    │           │   │   ├── hooks
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── custom.cpython-311.pyc
    │           │   │   │   │   └── version.cpython-311.pyc
    │           │   │   │   ├── custom.py
    │           │   │   │   ├── plugin
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── hooks.cpython-311.pyc
    │           │   │   │   │   │   └── interface.cpython-311.pyc
    │           │   │   │   │   ├── hooks.py
    │           │   │   │   │   └── interface.py
    │           │   │   │   └── version.py
    │           │   │   ├── macos.py
    │           │   │   ├── plugin
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── hooks.cpython-311.pyc
    │           │   │   │   │   └── interface.cpython-311.pyc
    │           │   │   │   ├── hooks.py
    │           │   │   │   └── interface.py
    │           │   │   ├── sdist.py
    │           │   │   ├── utils.py
    │           │   │   └── wheel.py
    │           │   ├── cli
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   └── __init__.cpython-311.pyc
    │           │   │   ├── dep
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   └── core.cpython-311.pyc
    │           │   │   │   └── core.py
    │           │   │   ├── metadata
    │           │   │   │   ├── __init__.py
    │           │   │   │   └── __pycache__
    │           │   │   │       └── __init__.cpython-311.pyc
    │           │   │   └── version
    │           │   │       ├── __init__.py
    │           │   │       └── __pycache__
    │           │   │           └── __init__.cpython-311.pyc
    │           │   ├── dep
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   └── core.cpython-311.pyc
    │           │   │   └── core.py
    │           │   ├── licenses
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   └── supported.cpython-311.pyc
    │           │   │   └── supported.py
    │           │   ├── metadata
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── core.cpython-311.pyc
    │           │   │   │   ├── custom.cpython-311.pyc
    │           │   │   │   ├── spec.cpython-311.pyc
    │           │   │   │   └── utils.cpython-311.pyc
    │           │   │   ├── core.py
    │           │   │   ├── custom.py
    │           │   │   ├── plugin
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── hooks.cpython-311.pyc
    │           │   │   │   │   └── interface.cpython-311.pyc
    │           │   │   │   ├── hooks.py
    │           │   │   │   └── interface.py
    │           │   │   ├── spec.py
    │           │   │   └── utils.py
    │           │   ├── ouroboros.py
    │           │   ├── plugin
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── exceptions.cpython-311.pyc
    │           │   │   │   ├── manager.cpython-311.pyc
    │           │   │   │   ├── specs.cpython-311.pyc
    │           │   │   │   └── utils.cpython-311.pyc
    │           │   │   ├── exceptions.py
    │           │   │   ├── manager.py
    │           │   │   ├── specs.py
    │           │   │   └── utils.py
    │           │   ├── py.typed
    │           │   ├── utils
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── constants.cpython-311.pyc
    │           │   │   │   ├── context.cpython-311.pyc
    │           │   │   │   └── fs.cpython-311.pyc
    │           │   │   ├── constants.py
    │           │   │   ├── context.py
    │           │   │   └── fs.py
    │           │   └── version
    │           │       ├── __init__.py
    │           │       ├── __pycache__
    │           │       │   ├── __init__.cpython-311.pyc
    │           │       │   └── core.cpython-311.pyc
    │           │       ├── core.py
    │           │       ├── scheme
    │           │       │   ├── __init__.py
    │           │       │   ├── __pycache__
    │           │       │   │   ├── __init__.cpython-311.pyc
    │           │       │   │   └── standard.cpython-311.pyc
    │           │       │   ├── plugin
    │           │       │   │   ├── __init__.py
    │           │       │   │   ├── __pycache__
    │           │       │   │   │   ├── __init__.cpython-311.pyc
    │           │       │   │   │   ├── hooks.cpython-311.pyc
    │           │       │   │   │   └── interface.cpython-311.pyc
    │           │       │   │   ├── hooks.py
    │           │       │   │   └── interface.py
    │           │       │   └── standard.py
    │           │       └── source
    │           │           ├── __init__.py
    │           │           ├── __pycache__
    │           │           │   ├── __init__.cpython-311.pyc
    │           │           │   ├── code.cpython-311.pyc
    │           │           │   ├── env.cpython-311.pyc
    │           │           │   └── regex.cpython-311.pyc
    │           │           ├── code.py
    │           │           ├── env.py
    │           │           ├── plugin
    │           │           │   ├── __init__.py
    │           │           │   ├── __pycache__
    │           │           │   │   ├── __init__.cpython-311.pyc
    │           │           │   │   ├── hooks.cpython-311.pyc
    │           │           │   │   └── interface.cpython-311.pyc
    │           │           │   ├── hooks.py
    │           │           │   └── interface.py
    │           │           └── regex.py
    │           ├── hatchling-1.26.3.dist-info
    │           │   ├── entry_points.txt
    │           │   ├── INSTALLER
    │           │   ├── licenses
    │           │   │   └── LICENSE.txt
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   ├── REQUESTED
    │           │   └── WHEEL
    │           ├── mcp_code_analyzer-0.1.0.dist-info
    │           │   ├── direct_url.json
    │           │   ├── INSTALLER
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   ├── REQUESTED
    │           │   └── WHEEL
    │           ├── packaging
    │           │   ├── __init__.py
    │           │   ├── __pycache__
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   ├── _elffile.cpython-311.pyc
    │           │   │   ├── _manylinux.cpython-311.pyc
    │           │   │   ├── _musllinux.cpython-311.pyc
    │           │   │   ├── _parser.cpython-311.pyc
    │           │   │   ├── _structures.cpython-311.pyc
    │           │   │   ├── _tokenizer.cpython-311.pyc
    │           │   │   ├── markers.cpython-311.pyc
    │           │   │   ├── metadata.cpython-311.pyc
    │           │   │   ├── requirements.cpython-311.pyc
    │           │   │   ├── specifiers.cpython-311.pyc
    │           │   │   ├── tags.cpython-311.pyc
    │           │   │   ├── utils.cpython-311.pyc
    │           │   │   └── version.cpython-311.pyc
    │           │   ├── _elffile.py
    │           │   ├── _manylinux.py
    │           │   ├── _musllinux.py
    │           │   ├── _parser.py
    │           │   ├── _structures.py
    │           │   ├── _tokenizer.py
    │           │   ├── licenses
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   └── _spdx.cpython-311.pyc
    │           │   │   └── _spdx.py
    │           │   ├── markers.py
    │           │   ├── metadata.py
    │           │   ├── py.typed
    │           │   ├── requirements.py
    │           │   ├── specifiers.py
    │           │   ├── tags.py
    │           │   ├── utils.py
    │           │   └── version.py
    │           ├── packaging-24.2.dist-info
    │           │   ├── INSTALLER
    │           │   ├── LICENSE
    │           │   ├── LICENSE.APACHE
    │           │   ├── LICENSE.BSD
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   └── WHEEL
    │           ├── pathspec
    │           │   ├── __init__.py
    │           │   ├── __pycache__
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   ├── _meta.cpython-311.pyc
    │           │   │   ├── gitignore.cpython-311.pyc
    │           │   │   ├── pathspec.cpython-311.pyc
    │           │   │   ├── pattern.cpython-311.pyc
    │           │   │   └── util.cpython-311.pyc
    │           │   ├── _meta.py
    │           │   ├── gitignore.py
    │           │   ├── pathspec.py
    │           │   ├── pattern.py
    │           │   ├── patterns
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   └── gitwildmatch.cpython-311.pyc
    │           │   │   └── gitwildmatch.py
    │           │   ├── py.typed
    │           │   └── util.py
    │           ├── pathspec-0.12.1.dist-info
    │           │   ├── INSTALLER
    │           │   ├── LICENSE
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   └── WHEEL
    │           ├── pip
    │           │   ├── __init__.py
    │           │   ├── __main__.py
    │           │   ├── __pip-runner__.py
    │           │   ├── __pycache__
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   ├── __main__.cpython-311.pyc
    │           │   │   └── __pip-runner__.cpython-311.pyc
    │           │   ├── _internal
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── build_env.cpython-311.pyc
    │           │   │   │   ├── cache.cpython-311.pyc
    │           │   │   │   ├── configuration.cpython-311.pyc
    │           │   │   │   ├── exceptions.cpython-311.pyc
    │           │   │   │   ├── main.cpython-311.pyc
    │           │   │   │   ├── pyproject.cpython-311.pyc
    │           │   │   │   ├── self_outdated_check.cpython-311.pyc
    │           │   │   │   └── wheel_builder.cpython-311.pyc
    │           │   │   ├── build_env.py
    │           │   │   ├── cache.py
    │           │   │   ├── cli
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── autocompletion.cpython-311.pyc
    │           │   │   │   │   ├── base_command.cpython-311.pyc
    │           │   │   │   │   ├── cmdoptions.cpython-311.pyc
    │           │   │   │   │   ├── command_context.cpython-311.pyc
    │           │   │   │   │   ├── index_command.cpython-311.pyc
    │           │   │   │   │   ├── main_parser.cpython-311.pyc
    │           │   │   │   │   ├── main.cpython-311.pyc
    │           │   │   │   │   ├── parser.cpython-311.pyc
    │           │   │   │   │   ├── progress_bars.cpython-311.pyc
    │           │   │   │   │   ├── req_command.cpython-311.pyc
    │           │   │   │   │   ├── spinners.cpython-311.pyc
    │           │   │   │   │   └── status_codes.cpython-311.pyc
    │           │   │   │   ├── autocompletion.py
    │           │   │   │   ├── base_command.py
    │           │   │   │   ├── cmdoptions.py
    │           │   │   │   ├── command_context.py
    │           │   │   │   ├── index_command.py
    │           │   │   │   ├── main_parser.py
    │           │   │   │   ├── main.py
    │           │   │   │   ├── parser.py
    │           │   │   │   ├── progress_bars.py
    │           │   │   │   ├── req_command.py
    │           │   │   │   ├── spinners.py
    │           │   │   │   └── status_codes.py
    │           │   │   ├── commands
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── cache.cpython-311.pyc
    │           │   │   │   │   ├── check.cpython-311.pyc
    │           │   │   │   │   ├── completion.cpython-311.pyc
    │           │   │   │   │   ├── configuration.cpython-311.pyc
    │           │   │   │   │   ├── debug.cpython-311.pyc
    │           │   │   │   │   ├── download.cpython-311.pyc
    │           │   │   │   │   ├── freeze.cpython-311.pyc
    │           │   │   │   │   ├── hash.cpython-311.pyc
    │           │   │   │   │   ├── help.cpython-311.pyc
    │           │   │   │   │   ├── index.cpython-311.pyc
    │           │   │   │   │   ├── inspect.cpython-311.pyc
    │           │   │   │   │   ├── install.cpython-311.pyc
    │           │   │   │   │   ├── list.cpython-311.pyc
    │           │   │   │   │   ├── search.cpython-311.pyc
    │           │   │   │   │   ├── show.cpython-311.pyc
    │           │   │   │   │   ├── uninstall.cpython-311.pyc
    │           │   │   │   │   └── wheel.cpython-311.pyc
    │           │   │   │   ├── cache.py
    │           │   │   │   ├── check.py
    │           │   │   │   ├── completion.py
    │           │   │   │   ├── configuration.py
    │           │   │   │   ├── debug.py
    │           │   │   │   ├── download.py
    │           │   │   │   ├── freeze.py
    │           │   │   │   ├── hash.py
    │           │   │   │   ├── help.py
    │           │   │   │   ├── index.py
    │           │   │   │   ├── inspect.py
    │           │   │   │   ├── install.py
    │           │   │   │   ├── list.py
    │           │   │   │   ├── search.py
    │           │   │   │   ├── show.py
    │           │   │   │   ├── uninstall.py
    │           │   │   │   └── wheel.py
    │           │   │   ├── configuration.py
    │           │   │   ├── distributions
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── base.cpython-311.pyc
    │           │   │   │   │   ├── installed.cpython-311.pyc
    │           │   │   │   │   ├── sdist.cpython-311.pyc
    │           │   │   │   │   └── wheel.cpython-311.pyc
    │           │   │   │   ├── base.py
    │           │   │   │   ├── installed.py
    │           │   │   │   ├── sdist.py
    │           │   │   │   └── wheel.py
    │           │   │   ├── exceptions.py
    │           │   │   ├── index
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── collector.cpython-311.pyc
    │           │   │   │   │   ├── package_finder.cpython-311.pyc
    │           │   │   │   │   └── sources.cpython-311.pyc
    │           │   │   │   ├── collector.py
    │           │   │   │   ├── package_finder.py
    │           │   │   │   └── sources.py
    │           │   │   ├── locations
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _distutils.cpython-311.pyc
    │           │   │   │   │   ├── _sysconfig.cpython-311.pyc
    │           │   │   │   │   └── base.cpython-311.pyc
    │           │   │   │   ├── _distutils.py
    │           │   │   │   ├── _sysconfig.py
    │           │   │   │   └── base.py
    │           │   │   ├── main.py
    │           │   │   ├── metadata
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _json.cpython-311.pyc
    │           │   │   │   │   ├── base.cpython-311.pyc
    │           │   │   │   │   └── pkg_resources.cpython-311.pyc
    │           │   │   │   ├── _json.py
    │           │   │   │   ├── base.py
    │           │   │   │   ├── importlib
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── _compat.cpython-311.pyc
    │           │   │   │   │   │   ├── _dists.cpython-311.pyc
    │           │   │   │   │   │   └── _envs.cpython-311.pyc
    │           │   │   │   │   ├── _compat.py
    │           │   │   │   │   ├── _dists.py
    │           │   │   │   │   └── _envs.py
    │           │   │   │   └── pkg_resources.py
    │           │   │   ├── models
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── candidate.cpython-311.pyc
    │           │   │   │   │   ├── direct_url.cpython-311.pyc
    │           │   │   │   │   ├── format_control.cpython-311.pyc
    │           │   │   │   │   ├── index.cpython-311.pyc
    │           │   │   │   │   ├── installation_report.cpython-311.pyc
    │           │   │   │   │   ├── link.cpython-311.pyc
    │           │   │   │   │   ├── scheme.cpython-311.pyc
    │           │   │   │   │   ├── search_scope.cpython-311.pyc
    │           │   │   │   │   ├── selection_prefs.cpython-311.pyc
    │           │   │   │   │   ├── target_python.cpython-311.pyc
    │           │   │   │   │   └── wheel.cpython-311.pyc
    │           │   │   │   ├── candidate.py
    │           │   │   │   ├── direct_url.py
    │           │   │   │   ├── format_control.py
    │           │   │   │   ├── index.py
    │           │   │   │   ├── installation_report.py
    │           │   │   │   ├── link.py
    │           │   │   │   ├── scheme.py
    │           │   │   │   ├── search_scope.py
    │           │   │   │   ├── selection_prefs.py
    │           │   │   │   ├── target_python.py
    │           │   │   │   └── wheel.py
    │           │   │   ├── network
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── auth.cpython-311.pyc
    │           │   │   │   │   ├── cache.cpython-311.pyc
    │           │   │   │   │   ├── download.cpython-311.pyc
    │           │   │   │   │   ├── lazy_wheel.cpython-311.pyc
    │           │   │   │   │   ├── session.cpython-311.pyc
    │           │   │   │   │   ├── utils.cpython-311.pyc
    │           │   │   │   │   └── xmlrpc.cpython-311.pyc
    │           │   │   │   ├── auth.py
    │           │   │   │   ├── cache.py
    │           │   │   │   ├── download.py
    │           │   │   │   ├── lazy_wheel.py
    │           │   │   │   ├── session.py
    │           │   │   │   ├── utils.py
    │           │   │   │   └── xmlrpc.py
    │           │   │   ├── operations
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── check.cpython-311.pyc
    │           │   │   │   │   ├── freeze.cpython-311.pyc
    │           │   │   │   │   └── prepare.cpython-311.pyc
    │           │   │   │   ├── check.py
    │           │   │   │   ├── freeze.py
    │           │   │   │   ├── install
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── editable_legacy.cpython-311.pyc
    │           │   │   │   │   │   └── wheel.cpython-311.pyc
    │           │   │   │   │   ├── editable_legacy.py
    │           │   │   │   │   └── wheel.py
    │           │   │   │   └── prepare.py
    │           │   │   ├── pyproject.py
    │           │   │   ├── req
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── constructors.cpython-311.pyc
    │           │   │   │   │   ├── req_file.cpython-311.pyc
    │           │   │   │   │   ├── req_install.cpython-311.pyc
    │           │   │   │   │   ├── req_set.cpython-311.pyc
    │           │   │   │   │   └── req_uninstall.cpython-311.pyc
    │           │   │   │   ├── constructors.py
    │           │   │   │   ├── req_file.py
    │           │   │   │   ├── req_install.py
    │           │   │   │   ├── req_set.py
    │           │   │   │   └── req_uninstall.py
    │           │   │   ├── resolution
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   └── base.cpython-311.pyc
    │           │   │   │   ├── base.py
    │           │   │   │   ├── legacy
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── resolver.cpython-311.pyc
    │           │   │   │   │   └── resolver.py
    │           │   │   │   └── resolvelib
    │           │   │   │       ├── __init__.py
    │           │   │   │       ├── __pycache__
    │           │   │   │       │   ├── __init__.cpython-311.pyc
    │           │   │   │       │   ├── base.cpython-311.pyc
    │           │   │   │       │   ├── candidates.cpython-311.pyc
    │           │   │   │       │   ├── factory.cpython-311.pyc
    │           │   │   │       │   ├── found_candidates.cpython-311.pyc
    │           │   │   │       │   ├── provider.cpython-311.pyc
    │           │   │   │       │   ├── reporter.cpython-311.pyc
    │           │   │   │       │   ├── requirements.cpython-311.pyc
    │           │   │   │       │   └── resolver.cpython-311.pyc
    │           │   │   │       ├── base.py
    │           │   │   │       ├── candidates.py
    │           │   │   │       ├── factory.py
    │           │   │   │       ├── found_candidates.py
    │           │   │   │       ├── provider.py
    │           │   │   │       ├── reporter.py
    │           │   │   │       ├── requirements.py
    │           │   │   │       └── resolver.py
    │           │   │   ├── self_outdated_check.py
    │           │   │   ├── utils
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _jaraco_text.cpython-311.pyc
    │           │   │   │   │   ├── _log.cpython-311.pyc
    │           │   │   │   │   ├── appdirs.cpython-311.pyc
    │           │   │   │   │   ├── compat.cpython-311.pyc
    │           │   │   │   │   ├── compatibility_tags.cpython-311.pyc
    │           │   │   │   │   ├── datetime.cpython-311.pyc
    │           │   │   │   │   ├── deprecation.cpython-311.pyc
    │           │   │   │   │   ├── direct_url_helpers.cpython-311.pyc
    │           │   │   │   │   ├── egg_link.cpython-311.pyc
    │           │   │   │   │   ├── encoding.cpython-311.pyc
    │           │   │   │   │   ├── entrypoints.cpython-311.pyc
    │           │   │   │   │   ├── filesystem.cpython-311.pyc
    │           │   │   │   │   ├── filetypes.cpython-311.pyc
    │           │   │   │   │   ├── glibc.cpython-311.pyc
    │           │   │   │   │   ├── hashes.cpython-311.pyc
    │           │   │   │   │   ├── logging.cpython-311.pyc
    │           │   │   │   │   ├── misc.cpython-311.pyc
    │           │   │   │   │   ├── packaging.cpython-311.pyc
    │           │   │   │   │   ├── retry.cpython-311.pyc
    │           │   │   │   │   ├── setuptools_build.cpython-311.pyc
    │           │   │   │   │   ├── subprocess.cpython-311.pyc
    │           │   │   │   │   ├── temp_dir.cpython-311.pyc
    │           │   │   │   │   ├── unpacking.cpython-311.pyc
    │           │   │   │   │   ├── urls.cpython-311.pyc
    │           │   │   │   │   ├── virtualenv.cpython-311.pyc
    │           │   │   │   │   └── wheel.cpython-311.pyc
    │           │   │   │   ├── _jaraco_text.py
    │           │   │   │   ├── _log.py
    │           │   │   │   ├── appdirs.py
    │           │   │   │   ├── compat.py
    │           │   │   │   ├── compatibility_tags.py
    │           │   │   │   ├── datetime.py
    │           │   │   │   ├── deprecation.py
    │           │   │   │   ├── direct_url_helpers.py
    │           │   │   │   ├── egg_link.py
    │           │   │   │   ├── encoding.py
    │           │   │   │   ├── entrypoints.py
    │           │   │   │   ├── filesystem.py
    │           │   │   │   ├── filetypes.py
    │           │   │   │   ├── glibc.py
    │           │   │   │   ├── hashes.py
    │           │   │   │   ├── logging.py
    │           │   │   │   ├── misc.py
    │           │   │   │   ├── packaging.py
    │           │   │   │   ├── retry.py
    │           │   │   │   ├── setuptools_build.py
    │           │   │   │   ├── subprocess.py
    │           │   │   │   ├── temp_dir.py
    │           │   │   │   ├── unpacking.py
    │           │   │   │   ├── urls.py
    │           │   │   │   ├── virtualenv.py
    │           │   │   │   └── wheel.py
    │           │   │   ├── vcs
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── bazaar.cpython-311.pyc
    │           │   │   │   │   ├── git.cpython-311.pyc
    │           │   │   │   │   ├── mercurial.cpython-311.pyc
    │           │   │   │   │   ├── subversion.cpython-311.pyc
    │           │   │   │   │   └── versioncontrol.cpython-311.pyc
    │           │   │   │   ├── bazaar.py
    │           │   │   │   ├── git.py
    │           │   │   │   ├── mercurial.py
    │           │   │   │   ├── subversion.py
    │           │   │   │   └── versioncontrol.py
    │           │   │   └── wheel_builder.py
    │           │   ├── _vendor
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   └── typing_extensions.cpython-311.pyc
    │           │   │   ├── cachecontrol
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _cmd.cpython-311.pyc
    │           │   │   │   │   ├── adapter.cpython-311.pyc
    │           │   │   │   │   ├── cache.cpython-311.pyc
    │           │   │   │   │   ├── controller.cpython-311.pyc
    │           │   │   │   │   ├── filewrapper.cpython-311.pyc
    │           │   │   │   │   ├── heuristics.cpython-311.pyc
    │           │   │   │   │   ├── serialize.cpython-311.pyc
    │           │   │   │   │   └── wrapper.cpython-311.pyc
    │           │   │   │   ├── _cmd.py
    │           │   │   │   ├── adapter.py
    │           │   │   │   ├── cache.py
    │           │   │   │   ├── caches
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── file_cache.cpython-311.pyc
    │           │   │   │   │   │   └── redis_cache.cpython-311.pyc
    │           │   │   │   │   ├── file_cache.py
    │           │   │   │   │   └── redis_cache.py
    │           │   │   │   ├── controller.py
    │           │   │   │   ├── filewrapper.py
    │           │   │   │   ├── heuristics.py
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── serialize.py
    │           │   │   │   └── wrapper.py
    │           │   │   ├── certifi
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __main__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── __main__.cpython-311.pyc
    │           │   │   │   │   └── core.cpython-311.pyc
    │           │   │   │   ├── cacert.pem
    │           │   │   │   ├── core.py
    │           │   │   │   └── py.typed
    │           │   │   ├── distlib
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── compat.cpython-311.pyc
    │           │   │   │   │   ├── database.cpython-311.pyc
    │           │   │   │   │   ├── index.cpython-311.pyc
    │           │   │   │   │   ├── locators.cpython-311.pyc
    │           │   │   │   │   ├── manifest.cpython-311.pyc
    │           │   │   │   │   ├── markers.cpython-311.pyc
    │           │   │   │   │   ├── metadata.cpython-311.pyc
    │           │   │   │   │   ├── resources.cpython-311.pyc
    │           │   │   │   │   ├── scripts.cpython-311.pyc
    │           │   │   │   │   ├── util.cpython-311.pyc
    │           │   │   │   │   ├── version.cpython-311.pyc
    │           │   │   │   │   └── wheel.cpython-311.pyc
    │           │   │   │   ├── compat.py
    │           │   │   │   ├── database.py
    │           │   │   │   ├── index.py
    │           │   │   │   ├── locators.py
    │           │   │   │   ├── manifest.py
    │           │   │   │   ├── markers.py
    │           │   │   │   ├── metadata.py
    │           │   │   │   ├── resources.py
    │           │   │   │   ├── scripts.py
    │           │   │   │   ├── t32.exe
    │           │   │   │   ├── t64-arm.exe
    │           │   │   │   ├── t64.exe
    │           │   │   │   ├── util.py
    │           │   │   │   ├── version.py
    │           │   │   │   ├── w32.exe
    │           │   │   │   ├── w64-arm.exe
    │           │   │   │   ├── w64.exe
    │           │   │   │   └── wheel.py
    │           │   │   ├── distro
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __main__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── __main__.cpython-311.pyc
    │           │   │   │   │   └── distro.cpython-311.pyc
    │           │   │   │   ├── distro.py
    │           │   │   │   └── py.typed
    │           │   │   ├── idna
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── codec.cpython-311.pyc
    │           │   │   │   │   ├── compat.cpython-311.pyc
    │           │   │   │   │   ├── core.cpython-311.pyc
    │           │   │   │   │   ├── idnadata.cpython-311.pyc
    │           │   │   │   │   ├── intranges.cpython-311.pyc
    │           │   │   │   │   ├── package_data.cpython-311.pyc
    │           │   │   │   │   └── uts46data.cpython-311.pyc
    │           │   │   │   ├── codec.py
    │           │   │   │   ├── compat.py
    │           │   │   │   ├── core.py
    │           │   │   │   ├── idnadata.py
    │           │   │   │   ├── intranges.py
    │           │   │   │   ├── package_data.py
    │           │   │   │   ├── py.typed
    │           │   │   │   └── uts46data.py
    │           │   │   ├── msgpack
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── exceptions.cpython-311.pyc
    │           │   │   │   │   ├── ext.cpython-311.pyc
    │           │   │   │   │   └── fallback.cpython-311.pyc
    │           │   │   │   ├── exceptions.py
    │           │   │   │   ├── ext.py
    │           │   │   │   └── fallback.py
    │           │   │   ├── packaging
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _elffile.cpython-311.pyc
    │           │   │   │   │   ├── _manylinux.cpython-311.pyc
    │           │   │   │   │   ├── _musllinux.cpython-311.pyc
    │           │   │   │   │   ├── _parser.cpython-311.pyc
    │           │   │   │   │   ├── _structures.cpython-311.pyc
    │           │   │   │   │   ├── _tokenizer.cpython-311.pyc
    │           │   │   │   │   ├── markers.cpython-311.pyc
    │           │   │   │   │   ├── metadata.cpython-311.pyc
    │           │   │   │   │   ├── requirements.cpython-311.pyc
    │           │   │   │   │   ├── specifiers.cpython-311.pyc
    │           │   │   │   │   ├── tags.cpython-311.pyc
    │           │   │   │   │   ├── utils.cpython-311.pyc
    │           │   │   │   │   └── version.cpython-311.pyc
    │           │   │   │   ├── _elffile.py
    │           │   │   │   ├── _manylinux.py
    │           │   │   │   ├── _musllinux.py
    │           │   │   │   ├── _parser.py
    │           │   │   │   ├── _structures.py
    │           │   │   │   ├── _tokenizer.py
    │           │   │   │   ├── markers.py
    │           │   │   │   ├── metadata.py
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── requirements.py
    │           │   │   │   ├── specifiers.py
    │           │   │   │   ├── tags.py
    │           │   │   │   ├── utils.py
    │           │   │   │   └── version.py
    │           │   │   ├── pkg_resources
    │           │   │   │   ├── __init__.py
    │           │   │   │   └── __pycache__
    │           │   │   │       └── __init__.cpython-311.pyc
    │           │   │   ├── platformdirs
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __main__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── __main__.cpython-311.pyc
    │           │   │   │   │   ├── android.cpython-311.pyc
    │           │   │   │   │   ├── api.cpython-311.pyc
    │           │   │   │   │   ├── macos.cpython-311.pyc
    │           │   │   │   │   ├── unix.cpython-311.pyc
    │           │   │   │   │   ├── version.cpython-311.pyc
    │           │   │   │   │   └── windows.cpython-311.pyc
    │           │   │   │   ├── android.py
    │           │   │   │   ├── api.py
    │           │   │   │   ├── macos.py
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── unix.py
    │           │   │   │   ├── version.py
    │           │   │   │   └── windows.py
    │           │   │   ├── pygments
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __main__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── __main__.cpython-311.pyc
    │           │   │   │   │   ├── cmdline.cpython-311.pyc
    │           │   │   │   │   ├── console.cpython-311.pyc
    │           │   │   │   │   ├── filter.cpython-311.pyc
    │           │   │   │   │   ├── formatter.cpython-311.pyc
    │           │   │   │   │   ├── lexer.cpython-311.pyc
    │           │   │   │   │   ├── modeline.cpython-311.pyc
    │           │   │   │   │   ├── plugin.cpython-311.pyc
    │           │   │   │   │   ├── regexopt.cpython-311.pyc
    │           │   │   │   │   ├── scanner.cpython-311.pyc
    │           │   │   │   │   ├── sphinxext.cpython-311.pyc
    │           │   │   │   │   ├── style.cpython-311.pyc
    │           │   │   │   │   ├── token.cpython-311.pyc
    │           │   │   │   │   ├── unistring.cpython-311.pyc
    │           │   │   │   │   └── util.cpython-311.pyc
    │           │   │   │   ├── cmdline.py
    │           │   │   │   ├── console.py
    │           │   │   │   ├── filter.py
    │           │   │   │   ├── filters
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   └── __pycache__
    │           │   │   │   │       └── __init__.cpython-311.pyc
    │           │   │   │   ├── formatter.py
    │           │   │   │   ├── formatters
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── _mapping.cpython-311.pyc
    │           │   │   │   │   │   ├── bbcode.cpython-311.pyc
    │           │   │   │   │   │   ├── groff.cpython-311.pyc
    │           │   │   │   │   │   ├── html.cpython-311.pyc
    │           │   │   │   │   │   ├── img.cpython-311.pyc
    │           │   │   │   │   │   ├── irc.cpython-311.pyc
    │           │   │   │   │   │   ├── latex.cpython-311.pyc
    │           │   │   │   │   │   ├── other.cpython-311.pyc
    │           │   │   │   │   │   ├── pangomarkup.cpython-311.pyc
    │           │   │   │   │   │   ├── rtf.cpython-311.pyc
    │           │   │   │   │   │   ├── svg.cpython-311.pyc
    │           │   │   │   │   │   ├── terminal.cpython-311.pyc
    │           │   │   │   │   │   └── terminal256.cpython-311.pyc
    │           │   │   │   │   ├── _mapping.py
    │           │   │   │   │   ├── bbcode.py
    │           │   │   │   │   ├── groff.py
    │           │   │   │   │   ├── html.py
    │           │   │   │   │   ├── img.py
    │           │   │   │   │   ├── irc.py
    │           │   │   │   │   ├── latex.py
    │           │   │   │   │   ├── other.py
    │           │   │   │   │   ├── pangomarkup.py
    │           │   │   │   │   ├── rtf.py
    │           │   │   │   │   ├── svg.py
    │           │   │   │   │   ├── terminal.py
    │           │   │   │   │   └── terminal256.py
    │           │   │   │   ├── lexer.py
    │           │   │   │   ├── lexers
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── _mapping.cpython-311.pyc
    │           │   │   │   │   │   └── python.cpython-311.pyc
    │           │   │   │   │   ├── _mapping.py
    │           │   │   │   │   └── python.py
    │           │   │   │   ├── modeline.py
    │           │   │   │   ├── plugin.py
    │           │   │   │   ├── regexopt.py
    │           │   │   │   ├── scanner.py
    │           │   │   │   ├── sphinxext.py
    │           │   │   │   ├── style.py
    │           │   │   │   ├── styles
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── _mapping.cpython-311.pyc
    │           │   │   │   │   └── _mapping.py
    │           │   │   │   ├── token.py
    │           │   │   │   ├── unistring.py
    │           │   │   │   └── util.py
    │           │   │   ├── pyproject_hooks
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _compat.cpython-311.pyc
    │           │   │   │   │   └── _impl.cpython-311.pyc
    │           │   │   │   ├── _compat.py
    │           │   │   │   ├── _impl.py
    │           │   │   │   └── _in_process
    │           │   │   │       ├── __init__.py
    │           │   │   │       ├── __pycache__
    │           │   │   │       │   ├── __init__.cpython-311.pyc
    │           │   │   │       │   └── _in_process.cpython-311.pyc
    │           │   │   │       └── _in_process.py
    │           │   │   ├── requests
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── __version__.cpython-311.pyc
    │           │   │   │   │   ├── _internal_utils.cpython-311.pyc
    │           │   │   │   │   ├── adapters.cpython-311.pyc
    │           │   │   │   │   ├── api.cpython-311.pyc
    │           │   │   │   │   ├── auth.cpython-311.pyc
    │           │   │   │   │   ├── certs.cpython-311.pyc
    │           │   │   │   │   ├── compat.cpython-311.pyc
    │           │   │   │   │   ├── cookies.cpython-311.pyc
    │           │   │   │   │   ├── exceptions.cpython-311.pyc
    │           │   │   │   │   ├── help.cpython-311.pyc
    │           │   │   │   │   ├── hooks.cpython-311.pyc
    │           │   │   │   │   ├── models.cpython-311.pyc
    │           │   │   │   │   ├── packages.cpython-311.pyc
    │           │   │   │   │   ├── sessions.cpython-311.pyc
    │           │   │   │   │   ├── status_codes.cpython-311.pyc
    │           │   │   │   │   ├── structures.cpython-311.pyc
    │           │   │   │   │   └── utils.cpython-311.pyc
    │           │   │   │   ├── __version__.py
    │           │   │   │   ├── _internal_utils.py
    │           │   │   │   ├── adapters.py
    │           │   │   │   ├── api.py
    │           │   │   │   ├── auth.py
    │           │   │   │   ├── certs.py
    │           │   │   │   ├── compat.py
    │           │   │   │   ├── cookies.py
    │           │   │   │   ├── exceptions.py
    │           │   │   │   ├── help.py
    │           │   │   │   ├── hooks.py
    │           │   │   │   ├── models.py
    │           │   │   │   ├── packages.py
    │           │   │   │   ├── sessions.py
    │           │   │   │   ├── status_codes.py
    │           │   │   │   ├── structures.py
    │           │   │   │   └── utils.py
    │           │   │   ├── resolvelib
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── providers.cpython-311.pyc
    │           │   │   │   │   ├── reporters.cpython-311.pyc
    │           │   │   │   │   ├── resolvers.cpython-311.pyc
    │           │   │   │   │   └── structs.cpython-311.pyc
    │           │   │   │   ├── compat
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── collections_abc.cpython-311.pyc
    │           │   │   │   │   └── collections_abc.py
    │           │   │   │   ├── providers.py
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── reporters.py
    │           │   │   │   ├── resolvers.py
    │           │   │   │   └── structs.py
    │           │   │   ├── rich
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __main__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── __main__.cpython-311.pyc
    │           │   │   │   │   ├── _cell_widths.cpython-311.pyc
    │           │   │   │   │   ├── _emoji_codes.cpython-311.pyc
    │           │   │   │   │   ├── _emoji_replace.cpython-311.pyc
    │           │   │   │   │   ├── _export_format.cpython-311.pyc
    │           │   │   │   │   ├── _extension.cpython-311.pyc
    │           │   │   │   │   ├── _fileno.cpython-311.pyc
    │           │   │   │   │   ├── _inspect.cpython-311.pyc
    │           │   │   │   │   ├── _log_render.cpython-311.pyc
    │           │   │   │   │   ├── _loop.cpython-311.pyc
    │           │   │   │   │   ├── _null_file.cpython-311.pyc
    │           │   │   │   │   ├── _palettes.cpython-311.pyc
    │           │   │   │   │   ├── _pick.cpython-311.pyc
    │           │   │   │   │   ├── _ratio.cpython-311.pyc
    │           │   │   │   │   ├── _spinners.cpython-311.pyc
    │           │   │   │   │   ├── _stack.cpython-311.pyc
    │           │   │   │   │   ├── _timer.cpython-311.pyc
    │           │   │   │   │   ├── _win32_console.cpython-311.pyc
    │           │   │   │   │   ├── _windows_renderer.cpython-311.pyc
    │           │   │   │   │   ├── _windows.cpython-311.pyc
    │           │   │   │   │   ├── _wrap.cpython-311.pyc
    │           │   │   │   │   ├── abc.cpython-311.pyc
    │           │   │   │   │   ├── align.cpython-311.pyc
    │           │   │   │   │   ├── ansi.cpython-311.pyc
    │           │   │   │   │   ├── bar.cpython-311.pyc
    │           │   │   │   │   ├── box.cpython-311.pyc
    │           │   │   │   │   ├── cells.cpython-311.pyc
    │           │   │   │   │   ├── color_triplet.cpython-311.pyc
    │           │   │   │   │   ├── color.cpython-311.pyc
    │           │   │   │   │   ├── columns.cpython-311.pyc
    │           │   │   │   │   ├── console.cpython-311.pyc
    │           │   │   │   │   ├── constrain.cpython-311.pyc
    │           │   │   │   │   ├── containers.cpython-311.pyc
    │           │   │   │   │   ├── control.cpython-311.pyc
    │           │   │   │   │   ├── default_styles.cpython-311.pyc
    │           │   │   │   │   ├── diagnose.cpython-311.pyc
    │           │   │   │   │   ├── emoji.cpython-311.pyc
    │           │   │   │   │   ├── errors.cpython-311.pyc
    │           │   │   │   │   ├── file_proxy.cpython-311.pyc
    │           │   │   │   │   ├── filesize.cpython-311.pyc
    │           │   │   │   │   ├── highlighter.cpython-311.pyc
    │           │   │   │   │   ├── json.cpython-311.pyc
    │           │   │   │   │   ├── jupyter.cpython-311.pyc
    │           │   │   │   │   ├── layout.cpython-311.pyc
    │           │   │   │   │   ├── live_render.cpython-311.pyc
    │           │   │   │   │   ├── live.cpython-311.pyc
    │           │   │   │   │   ├── logging.cpython-311.pyc
    │           │   │   │   │   ├── markup.cpython-311.pyc
    │           │   │   │   │   ├── measure.cpython-311.pyc
    │           │   │   │   │   ├── padding.cpython-311.pyc
    │           │   │   │   │   ├── pager.cpython-311.pyc
    │           │   │   │   │   ├── palette.cpython-311.pyc
    │           │   │   │   │   ├── panel.cpython-311.pyc
    │           │   │   │   │   ├── pretty.cpython-311.pyc
    │           │   │   │   │   ├── progress_bar.cpython-311.pyc
    │           │   │   │   │   ├── progress.cpython-311.pyc
    │           │   │   │   │   ├── prompt.cpython-311.pyc
    │           │   │   │   │   ├── protocol.cpython-311.pyc
    │           │   │   │   │   ├── region.cpython-311.pyc
    │           │   │   │   │   ├── repr.cpython-311.pyc
    │           │   │   │   │   ├── rule.cpython-311.pyc
    │           │   │   │   │   ├── scope.cpython-311.pyc
    │           │   │   │   │   ├── screen.cpython-311.pyc
    │           │   │   │   │   ├── segment.cpython-311.pyc
    │           │   │   │   │   ├── spinner.cpython-311.pyc
    │           │   │   │   │   ├── status.cpython-311.pyc
    │           │   │   │   │   ├── style.cpython-311.pyc
    │           │   │   │   │   ├── styled.cpython-311.pyc
    │           │   │   │   │   ├── syntax.cpython-311.pyc
    │           │   │   │   │   ├── table.cpython-311.pyc
    │           │   │   │   │   ├── terminal_theme.cpython-311.pyc
    │           │   │   │   │   ├── text.cpython-311.pyc
    │           │   │   │   │   ├── theme.cpython-311.pyc
    │           │   │   │   │   ├── themes.cpython-311.pyc
    │           │   │   │   │   ├── traceback.cpython-311.pyc
    │           │   │   │   │   └── tree.cpython-311.pyc
    │           │   │   │   ├── _cell_widths.py
    │           │   │   │   ├── _emoji_codes.py
    │           │   │   │   ├── _emoji_replace.py
    │           │   │   │   ├── _export_format.py
    │           │   │   │   ├── _extension.py
    │           │   │   │   ├── _fileno.py
    │           │   │   │   ├── _inspect.py
    │           │   │   │   ├── _log_render.py
    │           │   │   │   ├── _loop.py
    │           │   │   │   ├── _null_file.py
    │           │   │   │   ├── _palettes.py
    │           │   │   │   ├── _pick.py
    │           │   │   │   ├── _ratio.py
    │           │   │   │   ├── _spinners.py
    │           │   │   │   ├── _stack.py
    │           │   │   │   ├── _timer.py
    │           │   │   │   ├── _win32_console.py
    │           │   │   │   ├── _windows_renderer.py
    │           │   │   │   ├── _windows.py
    │           │   │   │   ├── _wrap.py
    │           │   │   │   ├── abc.py
    │           │   │   │   ├── align.py
    │           │   │   │   ├── ansi.py
    │           │   │   │   ├── bar.py
    │           │   │   │   ├── box.py
    │           │   │   │   ├── cells.py
    │           │   │   │   ├── color_triplet.py
    │           │   │   │   ├── color.py
    │           │   │   │   ├── columns.py
    │           │   │   │   ├── console.py
    │           │   │   │   ├── constrain.py
    │           │   │   │   ├── containers.py
    │           │   │   │   ├── control.py
    │           │   │   │   ├── default_styles.py
    │           │   │   │   ├── diagnose.py
    │           │   │   │   ├── emoji.py
    │           │   │   │   ├── errors.py
    │           │   │   │   ├── file_proxy.py
    │           │   │   │   ├── filesize.py
    │           │   │   │   ├── highlighter.py
    │           │   │   │   ├── json.py
    │           │   │   │   ├── jupyter.py
    │           │   │   │   ├── layout.py
    │           │   │   │   ├── live_render.py
    │           │   │   │   ├── live.py
    │           │   │   │   ├── logging.py
    │           │   │   │   ├── markup.py
    │           │   │   │   ├── measure.py
    │           │   │   │   ├── padding.py
    │           │   │   │   ├── pager.py
    │           │   │   │   ├── palette.py
    │           │   │   │   ├── panel.py
    │           │   │   │   ├── pretty.py
    │           │   │   │   ├── progress_bar.py
    │           │   │   │   ├── progress.py
    │           │   │   │   ├── prompt.py
    │           │   │   │   ├── protocol.py
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── region.py
    │           │   │   │   ├── repr.py
    │           │   │   │   ├── rule.py
    │           │   │   │   ├── scope.py
    │           │   │   │   ├── screen.py
    │           │   │   │   ├── segment.py
    │           │   │   │   ├── spinner.py
    │           │   │   │   ├── status.py
    │           │   │   │   ├── style.py
    │           │   │   │   ├── styled.py
    │           │   │   │   ├── syntax.py
    │           │   │   │   ├── table.py
    │           │   │   │   ├── terminal_theme.py
    │           │   │   │   ├── text.py
    │           │   │   │   ├── theme.py
    │           │   │   │   ├── themes.py
    │           │   │   │   ├── traceback.py
    │           │   │   │   └── tree.py
    │           │   │   ├── tomli
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _parser.cpython-311.pyc
    │           │   │   │   │   ├── _re.cpython-311.pyc
    │           │   │   │   │   └── _types.cpython-311.pyc
    │           │   │   │   ├── _parser.py
    │           │   │   │   ├── _re.py
    │           │   │   │   ├── _types.py
    │           │   │   │   └── py.typed
    │           │   │   ├── truststore
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _api.cpython-311.pyc
    │           │   │   │   │   ├── _macos.cpython-311.pyc
    │           │   │   │   │   ├── _openssl.cpython-311.pyc
    │           │   │   │   │   ├── _ssl_constants.cpython-311.pyc
    │           │   │   │   │   └── _windows.cpython-311.pyc
    │           │   │   │   ├── _api.py
    │           │   │   │   ├── _macos.py
    │           │   │   │   ├── _openssl.py
    │           │   │   │   ├── _ssl_constants.py
    │           │   │   │   ├── _windows.py
    │           │   │   │   └── py.typed
    │           │   │   ├── typing_extensions.py
    │           │   │   ├── urllib3
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _collections.cpython-311.pyc
    │           │   │   │   │   ├── _version.cpython-311.pyc
    │           │   │   │   │   ├── connection.cpython-311.pyc
    │           │   │   │   │   ├── connectionpool.cpython-311.pyc
    │           │   │   │   │   ├── exceptions.cpython-311.pyc
    │           │   │   │   │   ├── fields.cpython-311.pyc
    │           │   │   │   │   ├── filepost.cpython-311.pyc
    │           │   │   │   │   ├── poolmanager.cpython-311.pyc
    │           │   │   │   │   ├── request.cpython-311.pyc
    │           │   │   │   │   └── response.cpython-311.pyc
    │           │   │   │   ├── _collections.py
    │           │   │   │   ├── _version.py
    │           │   │   │   ├── connection.py
    │           │   │   │   ├── connectionpool.py
    │           │   │   │   ├── contrib
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── _appengine_environ.cpython-311.pyc
    │           │   │   │   │   │   ├── appengine.cpython-311.pyc
    │           │   │   │   │   │   ├── ntlmpool.cpython-311.pyc
    │           │   │   │   │   │   ├── pyopenssl.cpython-311.pyc
    │           │   │   │   │   │   ├── securetransport.cpython-311.pyc
    │           │   │   │   │   │   └── socks.cpython-311.pyc
    │           │   │   │   │   ├── _appengine_environ.py
    │           │   │   │   │   ├── _securetransport
    │           │   │   │   │   │   ├── __init__.py
    │           │   │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   │   ├── bindings.cpython-311.pyc
    │           │   │   │   │   │   │   └── low_level.cpython-311.pyc
    │           │   │   │   │   │   ├── bindings.py
    │           │   │   │   │   │   └── low_level.py
    │           │   │   │   │   ├── appengine.py
    │           │   │   │   │   ├── ntlmpool.py
    │           │   │   │   │   ├── pyopenssl.py
    │           │   │   │   │   ├── securetransport.py
    │           │   │   │   │   └── socks.py
    │           │   │   │   ├── exceptions.py
    │           │   │   │   ├── fields.py
    │           │   │   │   ├── filepost.py
    │           │   │   │   ├── packages
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── six.cpython-311.pyc
    │           │   │   │   │   ├── backports
    │           │   │   │   │   │   ├── __init__.py
    │           │   │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   │   ├── makefile.cpython-311.pyc
    │           │   │   │   │   │   │   └── weakref_finalize.cpython-311.pyc
    │           │   │   │   │   │   ├── makefile.py
    │           │   │   │   │   │   └── weakref_finalize.py
    │           │   │   │   │   └── six.py
    │           │   │   │   ├── poolmanager.py
    │           │   │   │   ├── request.py
    │           │   │   │   ├── response.py
    │           │   │   │   └── util
    │           │   │   │       ├── __init__.py
    │           │   │   │       ├── __pycache__
    │           │   │   │       │   ├── __init__.cpython-311.pyc
    │           │   │   │       │   ├── connection.cpython-311.pyc
    │           │   │   │       │   ├── proxy.cpython-311.pyc
    │           │   │   │       │   ├── queue.cpython-311.pyc
    │           │   │   │       │   ├── request.cpython-311.pyc
    │           │   │   │       │   ├── response.cpython-311.pyc
    │           │   │   │       │   ├── retry.cpython-311.pyc
    │           │   │   │       │   ├── ssl_.cpython-311.pyc
    │           │   │   │       │   ├── ssl_match_hostname.cpython-311.pyc
    │           │   │   │       │   ├── ssltransport.cpython-311.pyc
    │           │   │   │       │   ├── timeout.cpython-311.pyc
    │           │   │   │       │   ├── url.cpython-311.pyc
    │           │   │   │       │   └── wait.cpython-311.pyc
    │           │   │   │       ├── connection.py
    │           │   │   │       ├── proxy.py
    │           │   │   │       ├── queue.py
    │           │   │   │       ├── request.py
    │           │   │   │       ├── response.py
    │           │   │   │       ├── retry.py
    │           │   │   │       ├── ssl_.py
    │           │   │   │       ├── ssl_match_hostname.py
    │           │   │   │       ├── ssltransport.py
    │           │   │   │       ├── timeout.py
    │           │   │   │       ├── url.py
    │           │   │   │       └── wait.py
    │           │   │   └── vendor.txt
    │           │   └── py.typed
    │           ├── pip-24.3.1.dist-info
    │           │   ├── AUTHORS.txt
    │           │   ├── entry_points.txt
    │           │   ├── INSTALLER
    │           │   ├── LICENSE.txt
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   ├── REQUESTED
    │           │   ├── top_level.txt
    │           │   └── WHEEL
    │           ├── pkg_resources
    │           │   ├── __init__.py
    │           │   ├── __pycache__
    │           │   │   └── __init__.cpython-311.pyc
    │           │   ├── api_tests.txt
    │           │   ├── py.typed
    │           │   └── tests
    │           │       ├── __init__.py
    │           │       ├── __pycache__
    │           │       │   ├── __init__.cpython-311.pyc
    │           │       │   ├── test_find_distributions.cpython-311.pyc
    │           │       │   ├── test_integration_zope_interface.cpython-311.pyc
    │           │       │   ├── test_markers.cpython-311.pyc
    │           │       │   ├── test_pkg_resources.cpython-311.pyc
    │           │       │   ├── test_resources.cpython-311.pyc
    │           │       │   └── test_working_set.cpython-311.pyc
    │           │       ├── data
    │           │       │   ├── my-test-package_unpacked-egg
    │           │       │   │   └── my_test_package-1.0-py3.7.egg
    │           │       │   │       └── EGG-INFO
    │           │       │   │           ├── dependency_links.txt
    │           │       │   │           ├── PKG-INFO
    │           │       │   │           ├── SOURCES.txt
    │           │       │   │           ├── top_level.txt
    │           │       │   │           └── zip-safe
    │           │       │   ├── my-test-package_zipped-egg
    │           │       │   │   └── my_test_package-1.0-py3.7.egg
    │           │       │   ├── my-test-package-source
    │           │       │   │   ├── __pycache__
    │           │       │   │   │   └── setup.cpython-311.pyc
    │           │       │   │   ├── setup.cfg
    │           │       │   │   └── setup.py
    │           │       │   └── my-test-package-zip
    │           │       │       └── my-test-package.zip
    │           │       ├── test_find_distributions.py
    │           │       ├── test_integration_zope_interface.py
    │           │       ├── test_markers.py
    │           │       ├── test_pkg_resources.py
    │           │       ├── test_resources.py
    │           │       └── test_working_set.py
    │           ├── pluggy
    │           │   ├── __init__.py
    │           │   ├── __pycache__
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   ├── _callers.cpython-311.pyc
    │           │   │   ├── _hooks.cpython-311.pyc
    │           │   │   ├── _manager.cpython-311.pyc
    │           │   │   ├── _result.cpython-311.pyc
    │           │   │   ├── _tracing.cpython-311.pyc
    │           │   │   ├── _version.cpython-311.pyc
    │           │   │   └── _warnings.cpython-311.pyc
    │           │   ├── _callers.py
    │           │   ├── _hooks.py
    │           │   ├── _manager.py
    │           │   ├── _result.py
    │           │   ├── _tracing.py
    │           │   ├── _version.py
    │           │   ├── _warnings.py
    │           │   └── py.typed
    │           ├── pluggy-1.5.0.dist-info
    │           │   ├── INSTALLER
    │           │   ├── LICENSE
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   ├── top_level.txt
    │           │   └── WHEEL
    │           ├── pyproject_hooks
    │           │   ├── __init__.py
    │           │   ├── __pycache__
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   └── _impl.cpython-311.pyc
    │           │   ├── _impl.py
    │           │   ├── _in_process
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   └── _in_process.cpython-311.pyc
    │           │   │   └── _in_process.py
    │           │   └── py.typed
    │           ├── pyproject_hooks-1.2.0.dist-info
    │           │   ├── INSTALLER
    │           │   ├── LICENSE
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   └── WHEEL
    │           ├── setuptools
    │           │   ├── __init__.py
    │           │   ├── __pycache__
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   ├── _core_metadata.cpython-311.pyc
    │           │   │   ├── _entry_points.cpython-311.pyc
    │           │   │   ├── _imp.cpython-311.pyc
    │           │   │   ├── _importlib.cpython-311.pyc
    │           │   │   ├── _itertools.cpython-311.pyc
    │           │   │   ├── _normalization.cpython-311.pyc
    │           │   │   ├── _path.cpython-311.pyc
    │           │   │   ├── _reqs.cpython-311.pyc
    │           │   │   ├── archive_util.cpython-311.pyc
    │           │   │   ├── build_meta.cpython-311.pyc
    │           │   │   ├── depends.cpython-311.pyc
    │           │   │   ├── discovery.cpython-311.pyc
    │           │   │   ├── dist.cpython-311.pyc
    │           │   │   ├── errors.cpython-311.pyc
    │           │   │   ├── extension.cpython-311.pyc
    │           │   │   ├── glob.cpython-311.pyc
    │           │   │   ├── installer.cpython-311.pyc
    │           │   │   ├── launch.cpython-311.pyc
    │           │   │   ├── logging.cpython-311.pyc
    │           │   │   ├── modified.cpython-311.pyc
    │           │   │   ├── monkey.cpython-311.pyc
    │           │   │   ├── msvc.cpython-311.pyc
    │           │   │   ├── namespaces.cpython-311.pyc
    │           │   │   ├── package_index.cpython-311.pyc
    │           │   │   ├── sandbox.cpython-311.pyc
    │           │   │   ├── unicode_utils.cpython-311.pyc
    │           │   │   ├── version.cpython-311.pyc
    │           │   │   ├── warnings.cpython-311.pyc
    │           │   │   ├── wheel.cpython-311.pyc
    │           │   │   └── windows_support.cpython-311.pyc
    │           │   ├── _core_metadata.py
    │           │   ├── _distutils
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── _collections.cpython-311.pyc
    │           │   │   │   ├── _functools.cpython-311.pyc
    │           │   │   │   ├── _itertools.cpython-311.pyc
    │           │   │   │   ├── _log.cpython-311.pyc
    │           │   │   │   ├── _macos_compat.cpython-311.pyc
    │           │   │   │   ├── _modified.cpython-311.pyc
    │           │   │   │   ├── _msvccompiler.cpython-311.pyc
    │           │   │   │   ├── archive_util.cpython-311.pyc
    │           │   │   │   ├── bcppcompiler.cpython-311.pyc
    │           │   │   │   ├── ccompiler.cpython-311.pyc
    │           │   │   │   ├── cmd.cpython-311.pyc
    │           │   │   │   ├── config.cpython-311.pyc
    │           │   │   │   ├── core.cpython-311.pyc
    │           │   │   │   ├── cygwinccompiler.cpython-311.pyc
    │           │   │   │   ├── debug.cpython-311.pyc
    │           │   │   │   ├── dep_util.cpython-311.pyc
    │           │   │   │   ├── dir_util.cpython-311.pyc
    │           │   │   │   ├── dist.cpython-311.pyc
    │           │   │   │   ├── errors.cpython-311.pyc
    │           │   │   │   ├── extension.cpython-311.pyc
    │           │   │   │   ├── fancy_getopt.cpython-311.pyc
    │           │   │   │   ├── file_util.cpython-311.pyc
    │           │   │   │   ├── filelist.cpython-311.pyc
    │           │   │   │   ├── log.cpython-311.pyc
    │           │   │   │   ├── spawn.cpython-311.pyc
    │           │   │   │   ├── sysconfig.cpython-311.pyc
    │           │   │   │   ├── text_file.cpython-311.pyc
    │           │   │   │   ├── unixccompiler.cpython-311.pyc
    │           │   │   │   ├── util.cpython-311.pyc
    │           │   │   │   ├── version.cpython-311.pyc
    │           │   │   │   ├── versionpredicate.cpython-311.pyc
    │           │   │   │   └── zosccompiler.cpython-311.pyc
    │           │   │   ├── _collections.py
    │           │   │   ├── _functools.py
    │           │   │   ├── _itertools.py
    │           │   │   ├── _log.py
    │           │   │   ├── _macos_compat.py
    │           │   │   ├── _modified.py
    │           │   │   ├── _msvccompiler.py
    │           │   │   ├── archive_util.py
    │           │   │   ├── bcppcompiler.py
    │           │   │   ├── ccompiler.py
    │           │   │   ├── cmd.py
    │           │   │   ├── command
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _framework_compat.cpython-311.pyc
    │           │   │   │   │   ├── bdist_dumb.cpython-311.pyc
    │           │   │   │   │   ├── bdist_rpm.cpython-311.pyc
    │           │   │   │   │   ├── bdist.cpython-311.pyc
    │           │   │   │   │   ├── build_clib.cpython-311.pyc
    │           │   │   │   │   ├── build_ext.cpython-311.pyc
    │           │   │   │   │   ├── build_py.cpython-311.pyc
    │           │   │   │   │   ├── build_scripts.cpython-311.pyc
    │           │   │   │   │   ├── build.cpython-311.pyc
    │           │   │   │   │   ├── check.cpython-311.pyc
    │           │   │   │   │   ├── clean.cpython-311.pyc
    │           │   │   │   │   ├── config.cpython-311.pyc
    │           │   │   │   │   ├── install_data.cpython-311.pyc
    │           │   │   │   │   ├── install_egg_info.cpython-311.pyc
    │           │   │   │   │   ├── install_headers.cpython-311.pyc
    │           │   │   │   │   ├── install_lib.cpython-311.pyc
    │           │   │   │   │   ├── install_scripts.cpython-311.pyc
    │           │   │   │   │   ├── install.cpython-311.pyc
    │           │   │   │   │   ├── register.cpython-311.pyc
    │           │   │   │   │   ├── sdist.cpython-311.pyc
    │           │   │   │   │   └── upload.cpython-311.pyc
    │           │   │   │   ├── _framework_compat.py
    │           │   │   │   ├── bdist_dumb.py
    │           │   │   │   ├── bdist_rpm.py
    │           │   │   │   ├── bdist.py
    │           │   │   │   ├── build_clib.py
    │           │   │   │   ├── build_ext.py
    │           │   │   │   ├── build_py.py
    │           │   │   │   ├── build_scripts.py
    │           │   │   │   ├── build.py
    │           │   │   │   ├── check.py
    │           │   │   │   ├── clean.py
    │           │   │   │   ├── config.py
    │           │   │   │   ├── install_data.py
    │           │   │   │   ├── install_egg_info.py
    │           │   │   │   ├── install_headers.py
    │           │   │   │   ├── install_lib.py
    │           │   │   │   ├── install_scripts.py
    │           │   │   │   ├── install.py
    │           │   │   │   ├── register.py
    │           │   │   │   ├── sdist.py
    │           │   │   │   └── upload.py
    │           │   │   ├── compat
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── py38.cpython-311.pyc
    │           │   │   │   │   └── py39.cpython-311.pyc
    │           │   │   │   ├── py38.py
    │           │   │   │   └── py39.py
    │           │   │   ├── config.py
    │           │   │   ├── core.py
    │           │   │   ├── cygwinccompiler.py
    │           │   │   ├── debug.py
    │           │   │   ├── dep_util.py
    │           │   │   ├── dir_util.py
    │           │   │   ├── dist.py
    │           │   │   ├── errors.py
    │           │   │   ├── extension.py
    │           │   │   ├── fancy_getopt.py
    │           │   │   ├── file_util.py
    │           │   │   ├── filelist.py
    │           │   │   ├── log.py
    │           │   │   ├── spawn.py
    │           │   │   ├── sysconfig.py
    │           │   │   ├── tests
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── support.cpython-311.pyc
    │           │   │   │   │   ├── test_archive_util.cpython-311.pyc
    │           │   │   │   │   ├── test_bdist_dumb.cpython-311.pyc
    │           │   │   │   │   ├── test_bdist_rpm.cpython-311.pyc
    │           │   │   │   │   ├── test_bdist.cpython-311.pyc
    │           │   │   │   │   ├── test_build_clib.cpython-311.pyc
    │           │   │   │   │   ├── test_build_ext.cpython-311.pyc
    │           │   │   │   │   ├── test_build_py.cpython-311.pyc
    │           │   │   │   │   ├── test_build_scripts.cpython-311.pyc
    │           │   │   │   │   ├── test_build.cpython-311.pyc
    │           │   │   │   │   ├── test_ccompiler.cpython-311.pyc
    │           │   │   │   │   ├── test_check.cpython-311.pyc
    │           │   │   │   │   ├── test_clean.cpython-311.pyc
    │           │   │   │   │   ├── test_cmd.cpython-311.pyc
    │           │   │   │   │   ├── test_config_cmd.cpython-311.pyc
    │           │   │   │   │   ├── test_config.cpython-311.pyc
    │           │   │   │   │   ├── test_core.cpython-311.pyc
    │           │   │   │   │   ├── test_cygwinccompiler.cpython-311.pyc
    │           │   │   │   │   ├── test_dir_util.cpython-311.pyc
    │           │   │   │   │   ├── test_dist.cpython-311.pyc
    │           │   │   │   │   ├── test_extension.cpython-311.pyc
    │           │   │   │   │   ├── test_file_util.cpython-311.pyc
    │           │   │   │   │   ├── test_filelist.cpython-311.pyc
    │           │   │   │   │   ├── test_install_data.cpython-311.pyc
    │           │   │   │   │   ├── test_install_headers.cpython-311.pyc
    │           │   │   │   │   ├── test_install_lib.cpython-311.pyc
    │           │   │   │   │   ├── test_install_scripts.cpython-311.pyc
    │           │   │   │   │   ├── test_install.cpython-311.pyc
    │           │   │   │   │   ├── test_log.cpython-311.pyc
    │           │   │   │   │   ├── test_mingwccompiler.cpython-311.pyc
    │           │   │   │   │   ├── test_modified.cpython-311.pyc
    │           │   │   │   │   ├── test_msvccompiler.cpython-311.pyc
    │           │   │   │   │   ├── test_register.cpython-311.pyc
    │           │   │   │   │   ├── test_sdist.cpython-311.pyc
    │           │   │   │   │   ├── test_spawn.cpython-311.pyc
    │           │   │   │   │   ├── test_sysconfig.cpython-311.pyc
    │           │   │   │   │   ├── test_text_file.cpython-311.pyc
    │           │   │   │   │   ├── test_unixccompiler.cpython-311.pyc
    │           │   │   │   │   ├── test_upload.cpython-311.pyc
    │           │   │   │   │   ├── test_util.cpython-311.pyc
    │           │   │   │   │   ├── test_version.cpython-311.pyc
    │           │   │   │   │   ├── test_versionpredicate.cpython-311.pyc
    │           │   │   │   │   └── unix_compat.cpython-311.pyc
    │           │   │   │   ├── compat
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── py38.cpython-311.pyc
    │           │   │   │   │   └── py38.py
    │           │   │   │   ├── support.py
    │           │   │   │   ├── test_archive_util.py
    │           │   │   │   ├── test_bdist_dumb.py
    │           │   │   │   ├── test_bdist_rpm.py
    │           │   │   │   ├── test_bdist.py
    │           │   │   │   ├── test_build_clib.py
    │           │   │   │   ├── test_build_ext.py
    │           │   │   │   ├── test_build_py.py
    │           │   │   │   ├── test_build_scripts.py
    │           │   │   │   ├── test_build.py
    │           │   │   │   ├── test_ccompiler.py
    │           │   │   │   ├── test_check.py
    │           │   │   │   ├── test_clean.py
    │           │   │   │   ├── test_cmd.py
    │           │   │   │   ├── test_config_cmd.py
    │           │   │   │   ├── test_config.py
    │           │   │   │   ├── test_core.py
    │           │   │   │   ├── test_cygwinccompiler.py
    │           │   │   │   ├── test_dir_util.py
    │           │   │   │   ├── test_dist.py
    │           │   │   │   ├── test_extension.py
    │           │   │   │   ├── test_file_util.py
    │           │   │   │   ├── test_filelist.py
    │           │   │   │   ├── test_install_data.py
    │           │   │   │   ├── test_install_headers.py
    │           │   │   │   ├── test_install_lib.py
    │           │   │   │   ├── test_install_scripts.py
    │           │   │   │   ├── test_install.py
    │           │   │   │   ├── test_log.py
    │           │   │   │   ├── test_mingwccompiler.py
    │           │   │   │   ├── test_modified.py
    │           │   │   │   ├── test_msvccompiler.py
    │           │   │   │   ├── test_register.py
    │           │   │   │   ├── test_sdist.py
    │           │   │   │   ├── test_spawn.py
    │           │   │   │   ├── test_sysconfig.py
    │           │   │   │   ├── test_text_file.py
    │           │   │   │   ├── test_unixccompiler.py
    │           │   │   │   ├── test_upload.py
    │           │   │   │   ├── test_util.py
    │           │   │   │   ├── test_version.py
    │           │   │   │   ├── test_versionpredicate.py
    │           │   │   │   └── unix_compat.py
    │           │   │   ├── text_file.py
    │           │   │   ├── unixccompiler.py
    │           │   │   ├── util.py
    │           │   │   ├── version.py
    │           │   │   ├── versionpredicate.py
    │           │   │   └── zosccompiler.py
    │           │   ├── _entry_points.py
    │           │   ├── _imp.py
    │           │   ├── _importlib.py
    │           │   ├── _itertools.py
    │           │   ├── _normalization.py
    │           │   ├── _path.py
    │           │   ├── _reqs.py
    │           │   ├── _vendor
    │           │   │   ├── __pycache__
    │           │   │   │   └── typing_extensions.cpython-311.pyc
    │           │   │   ├── autocommand
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── autoasync.cpython-311.pyc
    │           │   │   │   │   ├── autocommand.cpython-311.pyc
    │           │   │   │   │   ├── automain.cpython-311.pyc
    │           │   │   │   │   ├── autoparse.cpython-311.pyc
    │           │   │   │   │   └── errors.cpython-311.pyc
    │           │   │   │   ├── autoasync.py
    │           │   │   │   ├── autocommand.py
    │           │   │   │   ├── automain.py
    │           │   │   │   ├── autoparse.py
    │           │   │   │   └── errors.py
    │           │   │   ├── autocommand-2.2.2.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── backports
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   └── __init__.cpython-311.pyc
    │           │   │   │   └── tarfile
    │           │   │   │       ├── __init__.py
    │           │   │   │       ├── __main__.py
    │           │   │   │       ├── __pycache__
    │           │   │   │       │   ├── __init__.cpython-311.pyc
    │           │   │   │       │   └── __main__.cpython-311.pyc
    │           │   │   │       └── compat
    │           │   │   │           ├── __init__.py
    │           │   │   │           ├── __pycache__
    │           │   │   │           │   ├── __init__.cpython-311.pyc
    │           │   │   │           │   └── py38.cpython-311.pyc
    │           │   │   │           └── py38.py
    │           │   │   ├── backports.tarfile-1.2.0.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── importlib_metadata
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _adapters.cpython-311.pyc
    │           │   │   │   │   ├── _collections.cpython-311.pyc
    │           │   │   │   │   ├── _compat.cpython-311.pyc
    │           │   │   │   │   ├── _functools.cpython-311.pyc
    │           │   │   │   │   ├── _itertools.cpython-311.pyc
    │           │   │   │   │   ├── _meta.cpython-311.pyc
    │           │   │   │   │   ├── _text.cpython-311.pyc
    │           │   │   │   │   └── diagnose.cpython-311.pyc
    │           │   │   │   ├── _adapters.py
    │           │   │   │   ├── _collections.py
    │           │   │   │   ├── _compat.py
    │           │   │   │   ├── _functools.py
    │           │   │   │   ├── _itertools.py
    │           │   │   │   ├── _meta.py
    │           │   │   │   ├── _text.py
    │           │   │   │   ├── compat
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── py311.cpython-311.pyc
    │           │   │   │   │   │   └── py39.cpython-311.pyc
    │           │   │   │   │   ├── py311.py
    │           │   │   │   │   └── py39.py
    │           │   │   │   ├── diagnose.py
    │           │   │   │   └── py.typed
    │           │   │   ├── importlib_metadata-8.0.0.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── importlib_resources
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _adapters.cpython-311.pyc
    │           │   │   │   │   ├── _common.cpython-311.pyc
    │           │   │   │   │   ├── _itertools.cpython-311.pyc
    │           │   │   │   │   ├── abc.cpython-311.pyc
    │           │   │   │   │   ├── functional.cpython-311.pyc
    │           │   │   │   │   ├── readers.cpython-311.pyc
    │           │   │   │   │   └── simple.cpython-311.pyc
    │           │   │   │   ├── _adapters.py
    │           │   │   │   ├── _common.py
    │           │   │   │   ├── _itertools.py
    │           │   │   │   ├── abc.py
    │           │   │   │   ├── compat
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── py38.cpython-311.pyc
    │           │   │   │   │   │   └── py39.cpython-311.pyc
    │           │   │   │   │   ├── py38.py
    │           │   │   │   │   └── py39.py
    │           │   │   │   ├── functional.py
    │           │   │   │   ├── future
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── adapters.cpython-311.pyc
    │           │   │   │   │   └── adapters.py
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── readers.py
    │           │   │   │   ├── simple.py
    │           │   │   │   └── tests
    │           │   │   │       ├── __init__.py
    │           │   │   │       ├── __pycache__
    │           │   │   │       │   ├── __init__.cpython-311.pyc
    │           │   │   │       │   ├── _path.cpython-311.pyc
    │           │   │   │       │   ├── test_compatibilty_files.cpython-311.pyc
    │           │   │   │       │   ├── test_contents.cpython-311.pyc
    │           │   │   │       │   ├── test_custom.cpython-311.pyc
    │           │   │   │       │   ├── test_files.cpython-311.pyc
    │           │   │   │       │   ├── test_functional.cpython-311.pyc
    │           │   │   │       │   ├── test_open.cpython-311.pyc
    │           │   │   │       │   ├── test_path.cpython-311.pyc
    │           │   │   │       │   ├── test_read.cpython-311.pyc
    │           │   │   │       │   ├── test_reader.cpython-311.pyc
    │           │   │   │       │   ├── test_resource.cpython-311.pyc
    │           │   │   │       │   ├── util.cpython-311.pyc
    │           │   │   │       │   └── zip.cpython-311.pyc
    │           │   │   │       ├── _path.py
    │           │   │   │       ├── compat
    │           │   │   │       │   ├── __init__.py
    │           │   │   │       │   ├── __pycache__
    │           │   │   │       │   │   ├── __init__.cpython-311.pyc
    │           │   │   │       │   │   ├── py312.cpython-311.pyc
    │           │   │   │       │   │   └── py39.cpython-311.pyc
    │           │   │   │       │   ├── py312.py
    │           │   │   │       │   └── py39.py
    │           │   │   │       ├── data01
    │           │   │   │       │   ├── __init__.py
    │           │   │   │       │   ├── __pycache__
    │           │   │   │       │   │   └── __init__.cpython-311.pyc
    │           │   │   │       │   ├── binary.file
    │           │   │   │       │   ├── subdirectory
    │           │   │   │       │   │   ├── __init__.py
    │           │   │   │       │   │   ├── __pycache__
    │           │   │   │       │   │   │   └── __init__.cpython-311.pyc
    │           │   │   │       │   │   └── binary.file
    │           │   │   │       │   ├── utf-16.file
    │           │   │   │       │   └── utf-8.file
    │           │   │   │       ├── data02
    │           │   │   │       │   ├── __init__.py
    │           │   │   │       │   ├── __pycache__
    │           │   │   │       │   │   └── __init__.cpython-311.pyc
    │           │   │   │       │   ├── one
    │           │   │   │       │   │   ├── __init__.py
    │           │   │   │       │   │   ├── __pycache__
    │           │   │   │       │   │   │   └── __init__.cpython-311.pyc
    │           │   │   │       │   │   └── resource1.txt
    │           │   │   │       │   ├── subdirectory
    │           │   │   │       │   │   └── subsubdir
    │           │   │   │       │   │       └── resource.txt
    │           │   │   │       │   └── two
    │           │   │   │       │       ├── __init__.py
    │           │   │   │       │       ├── __pycache__
    │           │   │   │       │       │   └── __init__.cpython-311.pyc
    │           │   │   │       │       └── resource2.txt
    │           │   │   │       ├── namespacedata01
    │           │   │   │       │   ├── binary.file
    │           │   │   │       │   ├── subdirectory
    │           │   │   │       │   │   └── binary.file
    │           │   │   │       │   ├── utf-16.file
    │           │   │   │       │   └── utf-8.file
    │           │   │   │       ├── test_compatibilty_files.py
    │           │   │   │       ├── test_contents.py
    │           │   │   │       ├── test_custom.py
    │           │   │   │       ├── test_files.py
    │           │   │   │       ├── test_functional.py
    │           │   │   │       ├── test_open.py
    │           │   │   │       ├── test_path.py
    │           │   │   │       ├── test_read.py
    │           │   │   │       ├── test_reader.py
    │           │   │   │       ├── test_resource.py
    │           │   │   │       ├── util.py
    │           │   │   │       └── zip.py
    │           │   │   ├── importlib_resources-6.4.0.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── inflect
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   └── __init__.cpython-311.pyc
    │           │   │   │   ├── compat
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── py38.cpython-311.pyc
    │           │   │   │   │   └── py38.py
    │           │   │   │   └── py.typed
    │           │   │   ├── inflect-7.3.1.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── jaraco
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   └── context.cpython-311.pyc
    │           │   │   │   ├── context.py
    │           │   │   │   ├── functools
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __init__.pyi
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   └── __init__.cpython-311.pyc
    │           │   │   │   │   └── py.typed
    │           │   │   │   └── text
    │           │   │   │       ├── __init__.py
    │           │   │   │       ├── __pycache__
    │           │   │   │       │   ├── __init__.cpython-311.pyc
    │           │   │   │       │   ├── layouts.cpython-311.pyc
    │           │   │   │       │   ├── show-newlines.cpython-311.pyc
    │           │   │   │       │   ├── strip-prefix.cpython-311.pyc
    │           │   │   │       │   ├── to-dvorak.cpython-311.pyc
    │           │   │   │       │   └── to-qwerty.cpython-311.pyc
    │           │   │   │       ├── layouts.py
    │           │   │   │       ├── Lorem ipsum.txt
    │           │   │   │       ├── show-newlines.py
    │           │   │   │       ├── strip-prefix.py
    │           │   │   │       ├── to-dvorak.py
    │           │   │   │       └── to-qwerty.py
    │           │   │   ├── jaraco.context-5.3.0.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── jaraco.functools-4.0.1.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── jaraco.text-3.12.1.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── more_itertools
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __init__.pyi
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── more.cpython-311.pyc
    │           │   │   │   │   └── recipes.cpython-311.pyc
    │           │   │   │   ├── more.py
    │           │   │   │   ├── more.pyi
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── recipes.py
    │           │   │   │   └── recipes.pyi
    │           │   │   ├── more_itertools-10.3.0.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   └── WHEEL
    │           │   │   ├── packaging
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _elffile.cpython-311.pyc
    │           │   │   │   │   ├── _manylinux.cpython-311.pyc
    │           │   │   │   │   ├── _musllinux.cpython-311.pyc
    │           │   │   │   │   ├── _parser.cpython-311.pyc
    │           │   │   │   │   ├── _structures.cpython-311.pyc
    │           │   │   │   │   ├── _tokenizer.cpython-311.pyc
    │           │   │   │   │   ├── markers.cpython-311.pyc
    │           │   │   │   │   ├── metadata.cpython-311.pyc
    │           │   │   │   │   ├── requirements.cpython-311.pyc
    │           │   │   │   │   ├── specifiers.cpython-311.pyc
    │           │   │   │   │   ├── tags.cpython-311.pyc
    │           │   │   │   │   ├── utils.cpython-311.pyc
    │           │   │   │   │   └── version.cpython-311.pyc
    │           │   │   │   ├── _elffile.py
    │           │   │   │   ├── _manylinux.py
    │           │   │   │   ├── _musllinux.py
    │           │   │   │   ├── _parser.py
    │           │   │   │   ├── _structures.py
    │           │   │   │   ├── _tokenizer.py
    │           │   │   │   ├── markers.py
    │           │   │   │   ├── metadata.py
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── requirements.py
    │           │   │   │   ├── specifiers.py
    │           │   │   │   ├── tags.py
    │           │   │   │   ├── utils.py
    │           │   │   │   └── version.py
    │           │   │   ├── packaging-24.1.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── LICENSE.APACHE
    │           │   │   │   ├── LICENSE.BSD
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   └── WHEEL
    │           │   │   ├── platformdirs
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __main__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── __main__.cpython-311.pyc
    │           │   │   │   │   ├── android.cpython-311.pyc
    │           │   │   │   │   ├── api.cpython-311.pyc
    │           │   │   │   │   ├── macos.cpython-311.pyc
    │           │   │   │   │   ├── unix.cpython-311.pyc
    │           │   │   │   │   ├── version.cpython-311.pyc
    │           │   │   │   │   └── windows.cpython-311.pyc
    │           │   │   │   ├── android.py
    │           │   │   │   ├── api.py
    │           │   │   │   ├── macos.py
    │           │   │   │   ├── py.typed
    │           │   │   │   ├── unix.py
    │           │   │   │   ├── version.py
    │           │   │   │   └── windows.py
    │           │   │   ├── platformdirs-4.2.2.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── licenses
    │           │   │   │   │   └── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   └── WHEEL
    │           │   │   ├── ruff.toml
    │           │   │   ├── tomli
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _parser.cpython-311.pyc
    │           │   │   │   │   ├── _re.cpython-311.pyc
    │           │   │   │   │   └── _types.cpython-311.pyc
    │           │   │   │   ├── _parser.py
    │           │   │   │   ├── _re.py
    │           │   │   │   ├── _types.py
    │           │   │   │   └── py.typed
    │           │   │   ├── tomli-2.0.1.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   └── WHEEL
    │           │   │   ├── typeguard
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── _checkers.cpython-311.pyc
    │           │   │   │   │   ├── _config.cpython-311.pyc
    │           │   │   │   │   ├── _decorators.cpython-311.pyc
    │           │   │   │   │   ├── _exceptions.cpython-311.pyc
    │           │   │   │   │   ├── _functions.cpython-311.pyc
    │           │   │   │   │   ├── _importhook.cpython-311.pyc
    │           │   │   │   │   ├── _memo.cpython-311.pyc
    │           │   │   │   │   ├── _pytest_plugin.cpython-311.pyc
    │           │   │   │   │   ├── _suppression.cpython-311.pyc
    │           │   │   │   │   ├── _transformer.cpython-311.pyc
    │           │   │   │   │   ├── _union_transformer.cpython-311.pyc
    │           │   │   │   │   └── _utils.cpython-311.pyc
    │           │   │   │   ├── _checkers.py
    │           │   │   │   ├── _config.py
    │           │   │   │   ├── _decorators.py
    │           │   │   │   ├── _exceptions.py
    │           │   │   │   ├── _functions.py
    │           │   │   │   ├── _importhook.py
    │           │   │   │   ├── _memo.py
    │           │   │   │   ├── _pytest_plugin.py
    │           │   │   │   ├── _suppression.py
    │           │   │   │   ├── _transformer.py
    │           │   │   │   ├── _union_transformer.py
    │           │   │   │   ├── _utils.py
    │           │   │   │   └── py.typed
    │           │   │   ├── typeguard-4.3.0.dist-info
    │           │   │   │   ├── entry_points.txt
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── top_level.txt
    │           │   │   │   └── WHEEL
    │           │   │   ├── typing_extensions-4.12.2.dist-info
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   └── WHEEL
    │           │   │   ├── typing_extensions.py
    │           │   │   ├── wheel
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __main__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── __main__.cpython-311.pyc
    │           │   │   │   │   ├── _setuptools_logging.cpython-311.pyc
    │           │   │   │   │   ├── bdist_wheel.cpython-311.pyc
    │           │   │   │   │   ├── macosx_libfile.cpython-311.pyc
    │           │   │   │   │   ├── metadata.cpython-311.pyc
    │           │   │   │   │   ├── util.cpython-311.pyc
    │           │   │   │   │   └── wheelfile.cpython-311.pyc
    │           │   │   │   ├── _setuptools_logging.py
    │           │   │   │   ├── bdist_wheel.py
    │           │   │   │   ├── cli
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   ├── convert.cpython-311.pyc
    │           │   │   │   │   │   ├── pack.cpython-311.pyc
    │           │   │   │   │   │   ├── tags.cpython-311.pyc
    │           │   │   │   │   │   └── unpack.cpython-311.pyc
    │           │   │   │   │   ├── convert.py
    │           │   │   │   │   ├── pack.py
    │           │   │   │   │   ├── tags.py
    │           │   │   │   │   └── unpack.py
    │           │   │   │   ├── macosx_libfile.py
    │           │   │   │   ├── metadata.py
    │           │   │   │   ├── util.py
    │           │   │   │   ├── vendored
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   └── __init__.cpython-311.pyc
    │           │   │   │   │   ├── packaging
    │           │   │   │   │   │   ├── __init__.py
    │           │   │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   │   ├── _elffile.cpython-311.pyc
    │           │   │   │   │   │   │   ├── _manylinux.cpython-311.pyc
    │           │   │   │   │   │   │   ├── _musllinux.cpython-311.pyc
    │           │   │   │   │   │   │   ├── _parser.cpython-311.pyc
    │           │   │   │   │   │   │   ├── _structures.cpython-311.pyc
    │           │   │   │   │   │   │   ├── _tokenizer.cpython-311.pyc
    │           │   │   │   │   │   │   ├── markers.cpython-311.pyc
    │           │   │   │   │   │   │   ├── requirements.cpython-311.pyc
    │           │   │   │   │   │   │   ├── specifiers.cpython-311.pyc
    │           │   │   │   │   │   │   ├── tags.cpython-311.pyc
    │           │   │   │   │   │   │   ├── utils.cpython-311.pyc
    │           │   │   │   │   │   │   └── version.cpython-311.pyc
    │           │   │   │   │   │   ├── _elffile.py
    │           │   │   │   │   │   ├── _manylinux.py
    │           │   │   │   │   │   ├── _musllinux.py
    │           │   │   │   │   │   ├── _parser.py
    │           │   │   │   │   │   ├── _structures.py
    │           │   │   │   │   │   ├── _tokenizer.py
    │           │   │   │   │   │   ├── markers.py
    │           │   │   │   │   │   ├── requirements.py
    │           │   │   │   │   │   ├── specifiers.py
    │           │   │   │   │   │   ├── tags.py
    │           │   │   │   │   │   ├── utils.py
    │           │   │   │   │   │   └── version.py
    │           │   │   │   │   └── vendor.txt
    │           │   │   │   └── wheelfile.py
    │           │   │   ├── wheel-0.43.0.dist-info
    │           │   │   │   ├── entry_points.txt
    │           │   │   │   ├── INSTALLER
    │           │   │   │   ├── LICENSE.txt
    │           │   │   │   ├── METADATA
    │           │   │   │   ├── RECORD
    │           │   │   │   ├── REQUESTED
    │           │   │   │   └── WHEEL
    │           │   │   ├── zipp
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   └── glob.cpython-311.pyc
    │           │   │   │   ├── compat
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── py310.cpython-311.pyc
    │           │   │   │   │   └── py310.py
    │           │   │   │   └── glob.py
    │           │   │   └── zipp-3.19.2.dist-info
    │           │   │       ├── INSTALLER
    │           │   │       ├── LICENSE
    │           │   │       ├── METADATA
    │           │   │       ├── RECORD
    │           │   │       ├── REQUESTED
    │           │   │       ├── top_level.txt
    │           │   │       └── WHEEL
    │           │   ├── archive_util.py
    │           │   ├── build_meta.py
    │           │   ├── cli-32.exe
    │           │   ├── cli-64.exe
    │           │   ├── cli-arm64.exe
    │           │   ├── cli.exe
    │           │   ├── command
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── _requirestxt.cpython-311.pyc
    │           │   │   │   ├── alias.cpython-311.pyc
    │           │   │   │   ├── bdist_egg.cpython-311.pyc
    │           │   │   │   ├── bdist_rpm.cpython-311.pyc
    │           │   │   │   ├── bdist_wheel.cpython-311.pyc
    │           │   │   │   ├── build_clib.cpython-311.pyc
    │           │   │   │   ├── build_ext.cpython-311.pyc
    │           │   │   │   ├── build_py.cpython-311.pyc
    │           │   │   │   ├── build.cpython-311.pyc
    │           │   │   │   ├── develop.cpython-311.pyc
    │           │   │   │   ├── dist_info.cpython-311.pyc
    │           │   │   │   ├── easy_install.cpython-311.pyc
    │           │   │   │   ├── editable_wheel.cpython-311.pyc
    │           │   │   │   ├── egg_info.cpython-311.pyc
    │           │   │   │   ├── install_egg_info.cpython-311.pyc
    │           │   │   │   ├── install_lib.cpython-311.pyc
    │           │   │   │   ├── install_scripts.cpython-311.pyc
    │           │   │   │   ├── install.cpython-311.pyc
    │           │   │   │   ├── register.cpython-311.pyc
    │           │   │   │   ├── rotate.cpython-311.pyc
    │           │   │   │   ├── saveopts.cpython-311.pyc
    │           │   │   │   ├── sdist.cpython-311.pyc
    │           │   │   │   ├── setopt.cpython-311.pyc
    │           │   │   │   ├── test.cpython-311.pyc
    │           │   │   │   ├── upload_docs.cpython-311.pyc
    │           │   │   │   └── upload.cpython-311.pyc
    │           │   │   ├── _requirestxt.py
    │           │   │   ├── alias.py
    │           │   │   ├── bdist_egg.py
    │           │   │   ├── bdist_rpm.py
    │           │   │   ├── bdist_wheel.py
    │           │   │   ├── build_clib.py
    │           │   │   ├── build_ext.py
    │           │   │   ├── build_py.py
    │           │   │   ├── build.py
    │           │   │   ├── develop.py
    │           │   │   ├── dist_info.py
    │           │   │   ├── easy_install.py
    │           │   │   ├── editable_wheel.py
    │           │   │   ├── egg_info.py
    │           │   │   ├── install_egg_info.py
    │           │   │   ├── install_lib.py
    │           │   │   ├── install_scripts.py
    │           │   │   ├── install.py
    │           │   │   ├── launcher manifest.xml
    │           │   │   ├── register.py
    │           │   │   ├── rotate.py
    │           │   │   ├── saveopts.py
    │           │   │   ├── sdist.py
    │           │   │   ├── setopt.py
    │           │   │   ├── test.py
    │           │   │   ├── upload_docs.py
    │           │   │   └── upload.py
    │           │   ├── compat
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── py310.cpython-311.pyc
    │           │   │   │   ├── py311.cpython-311.pyc
    │           │   │   │   ├── py312.cpython-311.pyc
    │           │   │   │   └── py39.cpython-311.pyc
    │           │   │   ├── py310.py
    │           │   │   ├── py311.py
    │           │   │   ├── py312.py
    │           │   │   └── py39.py
    │           │   ├── config
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── _apply_pyprojecttoml.cpython-311.pyc
    │           │   │   │   ├── expand.cpython-311.pyc
    │           │   │   │   ├── pyprojecttoml.cpython-311.pyc
    │           │   │   │   └── setupcfg.cpython-311.pyc
    │           │   │   ├── _apply_pyprojecttoml.py
    │           │   │   ├── _validate_pyproject
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── error_reporting.cpython-311.pyc
    │           │   │   │   │   ├── extra_validations.cpython-311.pyc
    │           │   │   │   │   ├── fastjsonschema_exceptions.cpython-311.pyc
    │           │   │   │   │   ├── fastjsonschema_validations.cpython-311.pyc
    │           │   │   │   │   └── formats.cpython-311.pyc
    │           │   │   │   ├── error_reporting.py
    │           │   │   │   ├── extra_validations.py
    │           │   │   │   ├── fastjsonschema_exceptions.py
    │           │   │   │   ├── fastjsonschema_validations.py
    │           │   │   │   ├── formats.py
    │           │   │   │   └── NOTICE
    │           │   │   ├── distutils.schema.json
    │           │   │   ├── expand.py
    │           │   │   ├── NOTICE
    │           │   │   ├── pyprojecttoml.py
    │           │   │   ├── setupcfg.py
    │           │   │   └── setuptools.schema.json
    │           │   ├── depends.py
    │           │   ├── discovery.py
    │           │   ├── dist.py
    │           │   ├── errors.py
    │           │   ├── extension.py
    │           │   ├── glob.py
    │           │   ├── gui-32.exe
    │           │   ├── gui-64.exe
    │           │   ├── gui-arm64.exe
    │           │   ├── gui.exe
    │           │   ├── installer.py
    │           │   ├── launch.py
    │           │   ├── logging.py
    │           │   ├── modified.py
    │           │   ├── monkey.py
    │           │   ├── msvc.py
    │           │   ├── namespaces.py
    │           │   ├── package_index.py
    │           │   ├── sandbox.py
    │           │   ├── script (dev).tmpl
    │           │   ├── script.tmpl
    │           │   ├── tests
    │           │   │   ├── __init__.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   ├── contexts.cpython-311.pyc
    │           │   │   │   ├── environment.cpython-311.pyc
    │           │   │   │   ├── fixtures.cpython-311.pyc
    │           │   │   │   ├── mod_with_constant.cpython-311.pyc
    │           │   │   │   ├── namespaces.cpython-311.pyc
    │           │   │   │   ├── script-with-bom.cpython-311.pyc
    │           │   │   │   ├── server.cpython-311.pyc
    │           │   │   │   ├── test_archive_util.cpython-311.pyc
    │           │   │   │   ├── test_bdist_deprecations.cpython-311.pyc
    │           │   │   │   ├── test_bdist_egg.cpython-311.pyc
    │           │   │   │   ├── test_bdist_wheel.cpython-311.pyc
    │           │   │   │   ├── test_build_clib.cpython-311.pyc
    │           │   │   │   ├── test_build_ext.cpython-311.pyc
    │           │   │   │   ├── test_build_meta.cpython-311.pyc
    │           │   │   │   ├── test_build_py.cpython-311.pyc
    │           │   │   │   ├── test_build.cpython-311.pyc
    │           │   │   │   ├── test_config_discovery.cpython-311.pyc
    │           │   │   │   ├── test_core_metadata.cpython-311.pyc
    │           │   │   │   ├── test_depends.cpython-311.pyc
    │           │   │   │   ├── test_develop.cpython-311.pyc
    │           │   │   │   ├── test_dist_info.cpython-311.pyc
    │           │   │   │   ├── test_dist.cpython-311.pyc
    │           │   │   │   ├── test_distutils_adoption.cpython-311.pyc
    │           │   │   │   ├── test_easy_install.cpython-311.pyc
    │           │   │   │   ├── test_editable_install.cpython-311.pyc
    │           │   │   │   ├── test_egg_info.cpython-311.pyc
    │           │   │   │   ├── test_extern.cpython-311.pyc
    │           │   │   │   ├── test_find_packages.cpython-311.pyc
    │           │   │   │   ├── test_find_py_modules.cpython-311.pyc
    │           │   │   │   ├── test_glob.cpython-311.pyc
    │           │   │   │   ├── test_install_scripts.cpython-311.pyc
    │           │   │   │   ├── test_logging.cpython-311.pyc
    │           │   │   │   ├── test_manifest.cpython-311.pyc
    │           │   │   │   ├── test_namespaces.cpython-311.pyc
    │           │   │   │   ├── test_packageindex.cpython-311.pyc
    │           │   │   │   ├── test_register.cpython-311.pyc
    │           │   │   │   ├── test_sandbox.cpython-311.pyc
    │           │   │   │   ├── test_sdist.cpython-311.pyc
    │           │   │   │   ├── test_setopt.cpython-311.pyc
    │           │   │   │   ├── test_setuptools.cpython-311.pyc
    │           │   │   │   ├── test_unicode_utils.cpython-311.pyc
    │           │   │   │   ├── test_upload.cpython-311.pyc
    │           │   │   │   ├── test_virtualenv.cpython-311.pyc
    │           │   │   │   ├── test_warnings.cpython-311.pyc
    │           │   │   │   ├── test_wheel.cpython-311.pyc
    │           │   │   │   ├── test_windows_wrappers.cpython-311.pyc
    │           │   │   │   ├── text.cpython-311.pyc
    │           │   │   │   └── textwrap.cpython-311.pyc
    │           │   │   ├── compat
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   └── py39.cpython-311.pyc
    │           │   │   │   └── py39.py
    │           │   │   ├── config
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── test_apply_pyprojecttoml.cpython-311.pyc
    │           │   │   │   │   ├── test_expand.cpython-311.pyc
    │           │   │   │   │   ├── test_pyprojecttoml_dynamic_deps.cpython-311.pyc
    │           │   │   │   │   ├── test_pyprojecttoml.cpython-311.pyc
    │           │   │   │   │   └── test_setupcfg.cpython-311.pyc
    │           │   │   │   ├── downloads
    │           │   │   │   │   ├── __init__.py
    │           │   │   │   │   ├── __pycache__
    │           │   │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   │   └── preload.cpython-311.pyc
    │           │   │   │   │   └── preload.py
    │           │   │   │   ├── setupcfg_examples.txt
    │           │   │   │   ├── test_apply_pyprojecttoml.py
    │           │   │   │   ├── test_expand.py
    │           │   │   │   ├── test_pyprojecttoml_dynamic_deps.py
    │           │   │   │   ├── test_pyprojecttoml.py
    │           │   │   │   └── test_setupcfg.py
    │           │   │   ├── contexts.py
    │           │   │   ├── environment.py
    │           │   │   ├── fixtures.py
    │           │   │   ├── indexes
    │           │   │   │   └── test_links_priority
    │           │   │   │       ├── external.html
    │           │   │   │       └── simple
    │           │   │   │           └── foobar
    │           │   │   │               └── index.html
    │           │   │   ├── integration
    │           │   │   │   ├── __init__.py
    │           │   │   │   ├── __pycache__
    │           │   │   │   │   ├── __init__.cpython-311.pyc
    │           │   │   │   │   ├── helpers.cpython-311.pyc
    │           │   │   │   │   └── test_pip_install_sdist.cpython-311.pyc
    │           │   │   │   ├── helpers.py
    │           │   │   │   └── test_pip_install_sdist.py
    │           │   │   ├── mod_with_constant.py
    │           │   │   ├── namespaces.py
    │           │   │   ├── script-with-bom.py
    │           │   │   ├── server.py
    │           │   │   ├── test_archive_util.py
    │           │   │   ├── test_bdist_deprecations.py
    │           │   │   ├── test_bdist_egg.py
    │           │   │   ├── test_bdist_wheel.py
    │           │   │   ├── test_build_clib.py
    │           │   │   ├── test_build_ext.py
    │           │   │   ├── test_build_meta.py
    │           │   │   ├── test_build_py.py
    │           │   │   ├── test_build.py
    │           │   │   ├── test_config_discovery.py
    │           │   │   ├── test_core_metadata.py
    │           │   │   ├── test_depends.py
    │           │   │   ├── test_develop.py
    │           │   │   ├── test_dist_info.py
    │           │   │   ├── test_dist.py
    │           │   │   ├── test_distutils_adoption.py
    │           │   │   ├── test_easy_install.py
    │           │   │   ├── test_editable_install.py
    │           │   │   ├── test_egg_info.py
    │           │   │   ├── test_extern.py
    │           │   │   ├── test_find_packages.py
    │           │   │   ├── test_find_py_modules.py
    │           │   │   ├── test_glob.py
    │           │   │   ├── test_install_scripts.py
    │           │   │   ├── test_logging.py
    │           │   │   ├── test_manifest.py
    │           │   │   ├── test_namespaces.py
    │           │   │   ├── test_packageindex.py
    │           │   │   ├── test_register.py
    │           │   │   ├── test_sandbox.py
    │           │   │   ├── test_sdist.py
    │           │   │   ├── test_setopt.py
    │           │   │   ├── test_setuptools.py
    │           │   │   ├── test_unicode_utils.py
    │           │   │   ├── test_upload.py
    │           │   │   ├── test_virtualenv.py
    │           │   │   ├── test_warnings.py
    │           │   │   ├── test_wheel.py
    │           │   │   ├── test_windows_wrappers.py
    │           │   │   ├── text.py
    │           │   │   └── textwrap.py
    │           │   ├── unicode_utils.py
    │           │   ├── version.py
    │           │   ├── warnings.py
    │           │   ├── wheel.py
    │           │   └── windows_support.py
    │           ├── setuptools-74.1.2.dist-info
    │           │   ├── entry_points.txt
    │           │   ├── INSTALLER
    │           │   ├── LICENSE
    │           │   ├── METADATA
    │           │   ├── RECORD
    │           │   ├── REQUESTED
    │           │   ├── top_level.txt
    │           │   └── WHEEL
    │           ├── trove_classifiers
    │           │   ├── __init__.py
    │           │   ├── __main__.py
    │           │   ├── __pycache__
    │           │   │   ├── __init__.cpython-311.pyc
    │           │   │   └── __main__.cpython-311.pyc
    │           │   └── py.typed
    │           └── trove_classifiers-2024.10.21.16.dist-info
    │               ├── INSTALLER
    │               ├── LICENSE
    │               ├── METADATA
    │               ├── RECORD
    │               ├── top_level.txt
    │               └── WHEEL
    └── pyvenv.cfg
```

# Files

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/_vendor/typeguard/_suppression.py:
--------------------------------------------------------------------------------

```python
 1 | from __future__ import annotations
 2 | 
 3 | import sys
 4 | from collections.abc import Callable, Generator
 5 | from contextlib import contextmanager
 6 | from functools import update_wrapper
 7 | from threading import Lock
 8 | from typing import ContextManager, TypeVar, overload
 9 | 
10 | if sys.version_info >= (3, 10):
11 |     from typing import ParamSpec
12 | else:
13 |     from typing_extensions import ParamSpec
14 | 
15 | P = ParamSpec("P")
16 | T = TypeVar("T")
17 | 
18 | type_checks_suppressed = 0
19 | type_checks_suppress_lock = Lock()
20 | 
21 | 
22 | @overload
23 | def suppress_type_checks(func: Callable[P, T]) -> Callable[P, T]: ...
24 | 
25 | 
26 | @overload
27 | def suppress_type_checks() -> ContextManager[None]: ...
28 | 
29 | 
30 | def suppress_type_checks(
31 |     func: Callable[P, T] | None = None,
32 | ) -> Callable[P, T] | ContextManager[None]:
33 |     """
34 |     Temporarily suppress all type checking.
35 | 
36 |     This function has two operating modes, based on how it's used:
37 | 
38 |     #. as a context manager (``with suppress_type_checks(): ...``)
39 |     #. as a decorator (``@suppress_type_checks``)
40 | 
41 |     When used as a context manager, :func:`check_type` and any automatically
42 |     instrumented functions skip the actual type checking. These context managers can be
43 |     nested.
44 | 
45 |     When used as a decorator, all type checking is suppressed while the function is
46 |     running.
47 | 
48 |     Type checking will resume once no more context managers are active and no decorated
49 |     functions are running.
50 | 
51 |     Both operating modes are thread-safe.
52 | 
53 |     """
54 | 
55 |     def wrapper(*args: P.args, **kwargs: P.kwargs) -> T:
56 |         global type_checks_suppressed
57 | 
58 |         with type_checks_suppress_lock:
59 |             type_checks_suppressed += 1
60 | 
61 |         assert func is not None
62 |         try:
63 |             return func(*args, **kwargs)
64 |         finally:
65 |             with type_checks_suppress_lock:
66 |                 type_checks_suppressed -= 1
67 | 
68 |     def cm() -> Generator[None, None, None]:
69 |         global type_checks_suppressed
70 | 
71 |         with type_checks_suppress_lock:
72 |             type_checks_suppressed += 1
73 | 
74 |         try:
75 |             yield
76 |         finally:
77 |             with type_checks_suppress_lock:
78 |                 type_checks_suppressed -= 1
79 | 
80 |     if func is None:
81 |         # Context manager mode
82 |         return contextmanager(cm)()
83 |     else:
84 |         # Decorator mode
85 |         update_wrapper(wrapper, func)
86 |         return wrapper
87 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pathspec/_meta.py:
--------------------------------------------------------------------------------

```python
 1 | """
 2 | This module contains the project meta-data.
 3 | """
 4 | 
 5 | __author__ = "Caleb P. Burns"
 6 | __copyright__ = "Copyright © 2013-2023 Caleb P. Burns"
 7 | __credits__ = [
 8 | 	"dahlia <https://github.com/dahlia>",
 9 | 	"highb <https://github.com/highb>",
10 | 	"029xue <https://github.com/029xue>",
11 | 	"mikexstudios <https://github.com/mikexstudios>",
12 | 	"nhumrich <https://github.com/nhumrich>",
13 | 	"davidfraser <https://github.com/davidfraser>",
14 | 	"demurgos <https://github.com/demurgos>",
15 | 	"ghickman <https://github.com/ghickman>",
16 | 	"nvie <https://github.com/nvie>",
17 | 	"adrienverge <https://github.com/adrienverge>",
18 | 	"AndersBlomdell <https://github.com/AndersBlomdell>",
19 | 	"thmxv <https://github.com/thmxv>",
20 | 	"wimglenn <https://github.com/wimglenn>",
21 | 	"hugovk <https://github.com/hugovk>",
22 | 	"dcecile <https://github.com/dcecile>",
23 | 	"mroutis <https://github.com/mroutis>",
24 | 	"jdufresne <https://github.com/jdufresne>",
25 | 	"groodt <https://github.com/groodt>",
26 | 	"ftrofin <https://github.com/ftrofin>",
27 | 	"pykong <https://github.com/pykong>",
28 | 	"nhhollander <https://github.com/nhhollander>",
29 | 	"KOLANICH <https://github.com/KOLANICH>",
30 | 	"JonjonHays <https://github.com/JonjonHays>",
31 | 	"Isaac0616 <https://github.com/Isaac0616>",
32 | 	"SebastiaanZ <https://github.com/SebastiaanZ>",
33 | 	"RoelAdriaans <https://github.com/RoelAdriaans>",
34 | 	"raviselker <https://github.com/raviselker>",
35 | 	"johanvergeer <https://github.com/johanvergeer>",
36 | 	"danjer <https://github.com/danjer>",
37 | 	"jhbuhrman <https://github.com/jhbuhrman>",
38 | 	"WPDOrdina <https://github.com/WPDOrdina>",
39 | 	"tirkarthi <https://github.com/tirkarthi>",
40 | 	"jayvdb <https://github.com/jayvdb>",
41 | 	"jwodder <https://github.com/jwodder>",
42 | 	"kloczek <https://github.com/kloczek>",
43 | 	"orens <https://github.com/orens>",
44 | 	"spMohanty <https://github.com/spMohanty>",
45 | 	"ichard26 <https://github.com/ichard26>",
46 | 	"jack1142 <https://github.com/jack1142>",
47 | 	"mgorny <https://github.com/mgorny>",
48 | 	"bzakdd <https://github.com/bzakdd>",
49 | 	"haimat <https://github.com/haimat>",
50 | 	"Avasam <https://github.com/Avasam>",
51 | 	"yschroeder <https://github.com/yschroeder>",
52 | 	"axesider <https://github.com/axesider>",
53 | 	"tomruk <https://github.com/tomruk>",
54 | 	"oprypin <https://github.com/oprypin>",
55 | 	"kurtmckee <https://github.com/kurtmckee>",
56 | ]
57 | __license__ = "MPL 2.0"
58 | __version__ = "0.12.1"
59 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pip/_internal/commands/check.py:
--------------------------------------------------------------------------------

```python
 1 | import logging
 2 | from optparse import Values
 3 | from typing import List
 4 | 
 5 | from pip._internal.cli.base_command import Command
 6 | from pip._internal.cli.status_codes import ERROR, SUCCESS
 7 | from pip._internal.metadata import get_default_environment
 8 | from pip._internal.operations.check import (
 9 |     check_package_set,
10 |     check_unsupported,
11 |     create_package_set_from_installed,
12 | )
13 | from pip._internal.utils.compatibility_tags import get_supported
14 | from pip._internal.utils.misc import write_output
15 | 
16 | logger = logging.getLogger(__name__)
17 | 
18 | 
19 | class CheckCommand(Command):
20 |     """Verify installed packages have compatible dependencies."""
21 | 
22 |     ignore_require_venv = True
23 |     usage = """
24 |       %prog [options]"""
25 | 
26 |     def run(self, options: Values, args: List[str]) -> int:
27 |         package_set, parsing_probs = create_package_set_from_installed()
28 |         missing, conflicting = check_package_set(package_set)
29 |         unsupported = list(
30 |             check_unsupported(
31 |                 get_default_environment().iter_installed_distributions(),
32 |                 get_supported(),
33 |             )
34 |         )
35 | 
36 |         for project_name in missing:
37 |             version = package_set[project_name].version
38 |             for dependency in missing[project_name]:
39 |                 write_output(
40 |                     "%s %s requires %s, which is not installed.",
41 |                     project_name,
42 |                     version,
43 |                     dependency[0],
44 |                 )
45 | 
46 |         for project_name in conflicting:
47 |             version = package_set[project_name].version
48 |             for dep_name, dep_version, req in conflicting[project_name]:
49 |                 write_output(
50 |                     "%s %s has requirement %s, but you have %s %s.",
51 |                     project_name,
52 |                     version,
53 |                     req,
54 |                     dep_name,
55 |                     dep_version,
56 |                 )
57 |         for package in unsupported:
58 |             write_output(
59 |                 "%s %s is not supported on this platform",
60 |                 package.raw_name,
61 |                 package.version,
62 |             )
63 |         if missing or conflicting or parsing_probs or unsupported:
64 |             return ERROR
65 |         else:
66 |             write_output("No broken requirements found.")
67 |             return SUCCESS
68 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/_entry_points.py:
--------------------------------------------------------------------------------

```python
 1 | import functools
 2 | import itertools
 3 | import operator
 4 | 
 5 | from jaraco.functools import pass_none
 6 | from jaraco.text import yield_lines
 7 | from more_itertools import consume
 8 | 
 9 | from ._importlib import metadata
10 | from ._itertools import ensure_unique
11 | from .errors import OptionError
12 | 
13 | 
14 | def ensure_valid(ep):
15 |     """
16 |     Exercise one of the dynamic properties to trigger
17 |     the pattern match.
18 |     """
19 |     try:
20 |         ep.extras
21 |     except (AttributeError, AssertionError) as ex:
22 |         # Why both? See https://github.com/python/importlib_metadata/issues/488
23 |         msg = (
24 |             f"Problems to parse {ep}.\nPlease ensure entry-point follows the spec: "
25 |             "https://packaging.python.org/en/latest/specifications/entry-points/"
26 |         )
27 |         raise OptionError(msg) from ex
28 | 
29 | 
30 | def load_group(value, group):
31 |     """
32 |     Given a value of an entry point or series of entry points,
33 |     return each as an EntryPoint.
34 |     """
35 |     # normalize to a single sequence of lines
36 |     lines = yield_lines(value)
37 |     text = f'[{group}]\n' + '\n'.join(lines)
38 |     return metadata.EntryPoints._from_text(text)
39 | 
40 | 
41 | def by_group_and_name(ep):
42 |     return ep.group, ep.name
43 | 
44 | 
45 | def validate(eps: metadata.EntryPoints):
46 |     """
47 |     Ensure entry points are unique by group and name and validate each.
48 |     """
49 |     consume(map(ensure_valid, ensure_unique(eps, key=by_group_and_name)))
50 |     return eps
51 | 
52 | 
53 | @functools.singledispatch
54 | def load(eps):
55 |     """
56 |     Given a Distribution.entry_points, produce EntryPoints.
57 |     """
58 |     groups = itertools.chain.from_iterable(
59 |         load_group(value, group) for group, value in eps.items()
60 |     )
61 |     return validate(metadata.EntryPoints(groups))
62 | 
63 | 
64 | @load.register(str)
65 | def _(eps):
66 |     r"""
67 |     >>> ep, = load('[console_scripts]\nfoo=bar')
68 |     >>> ep.group
69 |     'console_scripts'
70 |     >>> ep.name
71 |     'foo'
72 |     >>> ep.value
73 |     'bar'
74 |     """
75 |     return validate(metadata.EntryPoints(metadata.EntryPoints._from_text(eps)))
76 | 
77 | 
78 | load.register(type(None), lambda x: x)
79 | 
80 | 
81 | @pass_none
82 | def render(eps: metadata.EntryPoints):
83 |     by_group = operator.attrgetter('group')
84 |     groups = itertools.groupby(sorted(eps, key=by_group), by_group)
85 | 
86 |     return '\n'.join(f'[{group}]\n{render_items(items)}\n' for group, items in groups)
87 | 
88 | 
89 | def render_items(eps):
90 |     return '\n'.join(f'{ep.name} = {ep.value}' for ep in sorted(eps))
91 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/_vendor/importlib_metadata/_adapters.py:
--------------------------------------------------------------------------------

```python
 1 | import re
 2 | import textwrap
 3 | import email.message
 4 | 
 5 | from ._text import FoldedCase
 6 | 
 7 | 
 8 | class Message(email.message.Message):
 9 |     multiple_use_keys = set(
10 |         map(
11 |             FoldedCase,
12 |             [
13 |                 'Classifier',
14 |                 'Obsoletes-Dist',
15 |                 'Platform',
16 |                 'Project-URL',
17 |                 'Provides-Dist',
18 |                 'Provides-Extra',
19 |                 'Requires-Dist',
20 |                 'Requires-External',
21 |                 'Supported-Platform',
22 |                 'Dynamic',
23 |             ],
24 |         )
25 |     )
26 |     """
27 |     Keys that may be indicated multiple times per PEP 566.
28 |     """
29 | 
30 |     def __new__(cls, orig: email.message.Message):
31 |         res = super().__new__(cls)
32 |         vars(res).update(vars(orig))
33 |         return res
34 | 
35 |     def __init__(self, *args, **kwargs):
36 |         self._headers = self._repair_headers()
37 | 
38 |     # suppress spurious error from mypy
39 |     def __iter__(self):
40 |         return super().__iter__()
41 | 
42 |     def __getitem__(self, item):
43 |         """
44 |         Override parent behavior to typical dict behavior.
45 | 
46 |         ``email.message.Message`` will emit None values for missing
47 |         keys. Typical mappings, including this ``Message``, will raise
48 |         a key error for missing keys.
49 | 
50 |         Ref python/importlib_metadata#371.
51 |         """
52 |         res = super().__getitem__(item)
53 |         if res is None:
54 |             raise KeyError(item)
55 |         return res
56 | 
57 |     def _repair_headers(self):
58 |         def redent(value):
59 |             "Correct for RFC822 indentation"
60 |             if not value or '\n' not in value:
61 |                 return value
62 |             return textwrap.dedent(' ' * 8 + value)
63 | 
64 |         headers = [(key, redent(value)) for key, value in vars(self)['_headers']]
65 |         if self._payload:
66 |             headers.append(('Description', self.get_payload()))
67 |         return headers
68 | 
69 |     @property
70 |     def json(self):
71 |         """
72 |         Convert PackageMetadata to a JSON-compatible format
73 |         per PEP 0566.
74 |         """
75 | 
76 |         def transform(key):
77 |             value = self.get_all(key) if key in self.multiple_use_keys else self[key]
78 |             if key == 'Keywords':
79 |                 value = re.split(r'\s+', value)
80 |             tk = key.lower().replace('-', '_')
81 |             return tk, value
82 | 
83 |         return dict(map(transform, map(FoldedCase, self)))
84 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pip/_vendor/truststore/_openssl.py:
--------------------------------------------------------------------------------

```python
 1 | import contextlib
 2 | import os
 3 | import re
 4 | import ssl
 5 | import typing
 6 | 
 7 | # candidates based on https://github.com/tiran/certifi-system-store by Christian Heimes
 8 | _CA_FILE_CANDIDATES = [
 9 |     # Alpine, Arch, Fedora 34+, OpenWRT, RHEL 9+, BSD
10 |     "/etc/ssl/cert.pem",
11 |     # Fedora <= 34, RHEL <= 9, CentOS <= 9
12 |     "/etc/pki/tls/cert.pem",
13 |     # Debian, Ubuntu (requires ca-certificates)
14 |     "/etc/ssl/certs/ca-certificates.crt",
15 |     # SUSE
16 |     "/etc/ssl/ca-bundle.pem",
17 | ]
18 | 
19 | _HASHED_CERT_FILENAME_RE = re.compile(r"^[0-9a-fA-F]{8}\.[0-9]$")
20 | 
21 | 
22 | @contextlib.contextmanager
23 | def _configure_context(ctx: ssl.SSLContext) -> typing.Iterator[None]:
24 |     # First, check whether the default locations from OpenSSL
25 |     # seem like they will give us a usable set of CA certs.
26 |     # ssl.get_default_verify_paths already takes care of:
27 |     # - getting cafile from either the SSL_CERT_FILE env var
28 |     #   or the path configured when OpenSSL was compiled,
29 |     #   and verifying that that path exists
30 |     # - getting capath from either the SSL_CERT_DIR env var
31 |     #   or the path configured when OpenSSL was compiled,
32 |     #   and verifying that that path exists
33 |     # In addition we'll check whether capath appears to contain certs.
34 |     defaults = ssl.get_default_verify_paths()
35 |     if defaults.cafile or (defaults.capath and _capath_contains_certs(defaults.capath)):
36 |         ctx.set_default_verify_paths()
37 |     else:
38 |         # cafile from OpenSSL doesn't exist
39 |         # and capath from OpenSSL doesn't contain certs.
40 |         # Let's search other common locations instead.
41 |         for cafile in _CA_FILE_CANDIDATES:
42 |             if os.path.isfile(cafile):
43 |                 ctx.load_verify_locations(cafile=cafile)
44 |                 break
45 | 
46 |     yield
47 | 
48 | 
49 | def _capath_contains_certs(capath: str) -> bool:
50 |     """Check whether capath exists and contains certs in the expected format."""
51 |     if not os.path.isdir(capath):
52 |         return False
53 |     for name in os.listdir(capath):
54 |         if _HASHED_CERT_FILENAME_RE.match(name):
55 |             return True
56 |     return False
57 | 
58 | 
59 | def _verify_peercerts_impl(
60 |     ssl_context: ssl.SSLContext,
61 |     cert_chain: list[bytes],
62 |     server_hostname: str | None = None,
63 | ) -> None:
64 |     # This is a no-op because we've enabled SSLContext's built-in
65 |     # verification via verify_mode=CERT_REQUIRED, and don't need to repeat it.
66 |     pass
67 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/hatchling/version/source/code.py:
--------------------------------------------------------------------------------

```python
 1 | from __future__ import annotations
 2 | 
 3 | import os
 4 | 
 5 | from hatchling.version.source.plugin.interface import VersionSourceInterface
 6 | 
 7 | 
 8 | class CodeSource(VersionSourceInterface):
 9 |     PLUGIN_NAME = 'code'
10 | 
11 |     def get_version_data(self) -> dict:
12 |         import sys
13 |         from importlib.util import module_from_spec, spec_from_file_location
14 | 
15 |         relative_path = self.config.get('path')
16 |         if not relative_path:
17 |             message = 'option `path` must be specified'
18 |             raise ValueError(message)
19 | 
20 |         if not isinstance(relative_path, str):
21 |             message = 'option `path` must be a string'
22 |             raise TypeError(message)
23 | 
24 |         path = os.path.normpath(os.path.join(self.root, relative_path))
25 |         if not os.path.isfile(path):
26 |             message = f'file does not exist: {relative_path}'
27 |             raise OSError(message)
28 | 
29 |         expression = self.config.get('expression') or '__version__'
30 |         if not isinstance(expression, str):
31 |             message = 'option `expression` must be a string'
32 |             raise TypeError(message)
33 | 
34 |         search_paths = self.config.get('search-paths', [])
35 |         if not isinstance(search_paths, list):
36 |             message = 'option `search-paths` must be an array'
37 |             raise TypeError(message)
38 | 
39 |         absolute_search_paths = []
40 |         for i, search_path in enumerate(search_paths, 1):
41 |             if not isinstance(search_path, str):
42 |                 message = f'entry #{i} of option `search-paths` must be a string'
43 |                 raise TypeError(message)
44 | 
45 |             absolute_search_paths.append(os.path.normpath(os.path.join(self.root, search_path)))
46 | 
47 |         spec = spec_from_file_location(os.path.splitext(path)[0], path)
48 |         module = module_from_spec(spec)  # type: ignore[arg-type]
49 | 
50 |         old_search_paths = list(sys.path)
51 |         try:
52 |             sys.path[:] = [*absolute_search_paths, *old_search_paths]
53 |             spec.loader.exec_module(module)  # type: ignore[union-attr]
54 |         finally:
55 |             sys.path[:] = old_search_paths
56 | 
57 |         # Execute the expression to determine the version
58 |         version = eval(expression, vars(module))  # noqa: S307
59 | 
60 |         return {'version': version}
61 | 
62 |     def set_version(self, version: str, version_data: dict) -> None:  # noqa: ARG002, PLR6301
63 |         message = 'Cannot rewrite loaded code'
64 |         raise NotImplementedError(message)
65 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/command/alias.py:
--------------------------------------------------------------------------------

```python
 1 | from setuptools.command.setopt import config_file, edit_config, option_base
 2 | 
 3 | from distutils.errors import DistutilsOptionError
 4 | 
 5 | 
 6 | def shquote(arg):
 7 |     """Quote an argument for later parsing by shlex.split()"""
 8 |     for c in '"', "'", "\\", "#":
 9 |         if c in arg:
10 |             return repr(arg)
11 |     if arg.split() != [arg]:
12 |         return repr(arg)
13 |     return arg
14 | 
15 | 
16 | class alias(option_base):
17 |     """Define a shortcut that invokes one or more commands"""
18 | 
19 |     description = "define a shortcut to invoke one or more commands"
20 |     command_consumes_arguments = True
21 | 
22 |     user_options = [
23 |         ('remove', 'r', 'remove (unset) the alias'),
24 |     ] + option_base.user_options
25 | 
26 |     boolean_options = option_base.boolean_options + ['remove']
27 | 
28 |     def initialize_options(self):
29 |         option_base.initialize_options(self)
30 |         self.args = None
31 |         self.remove = None
32 | 
33 |     def finalize_options(self):
34 |         option_base.finalize_options(self)
35 |         if self.remove and len(self.args) != 1:
36 |             raise DistutilsOptionError(
37 |                 "Must specify exactly one argument (the alias name) when "
38 |                 "using --remove"
39 |             )
40 | 
41 |     def run(self):
42 |         aliases = self.distribution.get_option_dict('aliases')
43 | 
44 |         if not self.args:
45 |             print("Command Aliases")
46 |             print("---------------")
47 |             for alias in aliases:
48 |                 print("setup.py alias", format_alias(alias, aliases))
49 |             return
50 | 
51 |         elif len(self.args) == 1:
52 |             (alias,) = self.args
53 |             if self.remove:
54 |                 command = None
55 |             elif alias in aliases:
56 |                 print("setup.py alias", format_alias(alias, aliases))
57 |                 return
58 |             else:
59 |                 print("No alias definition found for %r" % alias)
60 |                 return
61 |         else:
62 |             alias = self.args[0]
63 |             command = ' '.join(map(shquote, self.args[1:]))
64 | 
65 |         edit_config(self.filename, {'aliases': {alias: command}}, self.dry_run)
66 | 
67 | 
68 | def format_alias(name, aliases):
69 |     source, command = aliases[name]
70 |     if source == config_file('global'):
71 |         source = '--global-config '
72 |     elif source == config_file('user'):
73 |         source = '--user-config '
74 |     elif source == config_file('local'):
75 |         source = ''
76 |     else:
77 |         source = '--filename=%r' % source
78 |     return source + name + ' ' + command
79 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/hatchling/version/scheme/plugin/interface.py:
--------------------------------------------------------------------------------

```python
 1 | from __future__ import annotations
 2 | 
 3 | import os
 4 | from abc import ABC, abstractmethod
 5 | from functools import cached_property
 6 | 
 7 | 
 8 | class VersionSchemeInterface(ABC):  # no cov
 9 |     """
10 |     Example usage:
11 | 
12 |     ```python tab="plugin.py"
13 |     from hatchling.version.scheme.plugin.interface import VersionSchemeInterface
14 | 
15 | 
16 |     class SpecialVersionScheme(VersionSchemeInterface):
17 |         PLUGIN_NAME = 'special'
18 |         ...
19 |     ```
20 | 
21 |     ```python tab="hooks.py"
22 |     from hatchling.plugin import hookimpl
23 | 
24 |     from .plugin import SpecialVersionScheme
25 | 
26 | 
27 |     @hookimpl
28 |     def hatch_register_version_scheme():
29 |         return SpecialVersionScheme
30 |     ```
31 |     """
32 | 
33 |     PLUGIN_NAME = ''
34 |     """The name used for selection."""
35 | 
36 |     def __init__(self, root: str, config: dict) -> None:
37 |         self.__root = root
38 |         self.__config = config
39 | 
40 |     @property
41 |     def root(self) -> str:
42 |         """
43 |         The root of the project tree as a string.
44 |         """
45 |         return self.__root
46 | 
47 |     @property
48 |     def config(self) -> dict:
49 |         """
50 |         ```toml config-example
51 |         [tool.hatch.version]
52 |         ```
53 |         """
54 |         return self.__config
55 | 
56 |     @cached_property
57 |     def validate_bump(self) -> bool:
58 |         """
59 |         This is the value of the `validate-bump` option, with the `HATCH_VERSION_VALIDATE_BUMP`
60 |         environment variable taking precedence. Validation is enabled by default.
61 | 
62 |         ```toml config-example
63 |         [tool.hatch.version]
64 |         validate-bump = true
65 |         ```
66 |         """
67 |         from hatchling.utils.constants import VersionEnvVars
68 | 
69 |         if VersionEnvVars.VALIDATE_BUMP in os.environ:
70 |             return os.environ[VersionEnvVars.VALIDATE_BUMP] not in {'false', '0'}
71 | 
72 |         validate_bump = self.config.get('validate-bump', True)
73 |         if not isinstance(validate_bump, bool):
74 |             message = 'option `validate-bump` must be a boolean'
75 |             raise TypeError(message)
76 | 
77 |         return validate_bump
78 | 
79 |     @abstractmethod
80 |     def update(self, desired_version: str, original_version: str, version_data: dict) -> str:
81 |         """
82 |         This should return a normalized form of the desired version. If the
83 |         [validate_bump](reference.md#hatchling.version.scheme.plugin.interface.VersionSchemeInterface.validate_bump)
84 |         property is `True`, this method should also verify that the version is higher than the original version.
85 |         """
86 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pip/_internal/utils/compat.py:
--------------------------------------------------------------------------------

```python
 1 | """Stuff that differs in different Python versions and platform
 2 | distributions."""
 3 | 
 4 | import importlib.resources
 5 | import logging
 6 | import os
 7 | import sys
 8 | from typing import IO
 9 | 
10 | __all__ = ["get_path_uid", "stdlib_pkgs", "WINDOWS"]
11 | 
12 | 
13 | logger = logging.getLogger(__name__)
14 | 
15 | 
16 | def has_tls() -> bool:
17 |     try:
18 |         import _ssl  # noqa: F401  # ignore unused
19 | 
20 |         return True
21 |     except ImportError:
22 |         pass
23 | 
24 |     from pip._vendor.urllib3.util import IS_PYOPENSSL
25 | 
26 |     return IS_PYOPENSSL
27 | 
28 | 
29 | def get_path_uid(path: str) -> int:
30 |     """
31 |     Return path's uid.
32 | 
33 |     Does not follow symlinks:
34 |         https://github.com/pypa/pip/pull/935#discussion_r5307003
35 | 
36 |     Placed this function in compat due to differences on AIX and
37 |     Jython, that should eventually go away.
38 | 
39 |     :raises OSError: When path is a symlink or can't be read.
40 |     """
41 |     if hasattr(os, "O_NOFOLLOW"):
42 |         fd = os.open(path, os.O_RDONLY | os.O_NOFOLLOW)
43 |         file_uid = os.fstat(fd).st_uid
44 |         os.close(fd)
45 |     else:  # AIX and Jython
46 |         # WARNING: time of check vulnerability, but best we can do w/o NOFOLLOW
47 |         if not os.path.islink(path):
48 |             # older versions of Jython don't have `os.fstat`
49 |             file_uid = os.stat(path).st_uid
50 |         else:
51 |             # raise OSError for parity with os.O_NOFOLLOW above
52 |             raise OSError(f"{path} is a symlink; Will not return uid for symlinks")
53 |     return file_uid
54 | 
55 | 
56 | # The importlib.resources.open_text function was deprecated in 3.11 with suggested
57 | # replacement we use below.
58 | if sys.version_info < (3, 11):
59 |     open_text_resource = importlib.resources.open_text
60 | else:
61 | 
62 |     def open_text_resource(
63 |         package: str, resource: str, encoding: str = "utf-8", errors: str = "strict"
64 |     ) -> IO[str]:
65 |         return (importlib.resources.files(package) / resource).open(
66 |             "r", encoding=encoding, errors=errors
67 |         )
68 | 
69 | 
70 | # packages in the stdlib that may have installation metadata, but should not be
71 | # considered 'installed'.  this theoretically could be determined based on
72 | # dist.location (py27:`sysconfig.get_paths()['stdlib']`,
73 | # py26:sysconfig.get_config_vars('LIBDEST')), but fear platform variation may
74 | # make this ineffective, so hard-coding
75 | stdlib_pkgs = {"python", "wsgiref", "argparse"}
76 | 
77 | 
78 | # windows detection, covers cpython and ironpython
79 | WINDOWS = sys.platform.startswith("win") or (sys.platform == "cli" and os.name == "nt")
80 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/tests/server.py:
--------------------------------------------------------------------------------

```python
 1 | """Basic http server for tests to simulate PyPI or custom indexes"""
 2 | 
 3 | import http.server
 4 | import os
 5 | import threading
 6 | import time
 7 | import urllib.parse
 8 | import urllib.request
 9 | 
10 | 
11 | class IndexServer(http.server.HTTPServer):
12 |     """Basic single-threaded http server simulating a package index
13 | 
14 |     You can use this server in unittest like this::
15 |         s = IndexServer()
16 |         s.start()
17 |         index_url = s.base_url() + 'mytestindex'
18 |         # do some test requests to the index
19 |         # The index files should be located in setuptools/tests/indexes
20 |         s.stop()
21 |     """
22 | 
23 |     def __init__(
24 |         self,
25 |         server_address=('', 0),
26 |         RequestHandlerClass=http.server.SimpleHTTPRequestHandler,
27 |     ):
28 |         http.server.HTTPServer.__init__(self, server_address, RequestHandlerClass)
29 |         self._run = True
30 | 
31 |     def start(self):
32 |         self.thread = threading.Thread(target=self.serve_forever)
33 |         self.thread.start()
34 | 
35 |     def stop(self):
36 |         "Stop the server"
37 | 
38 |         # Let the server finish the last request and wait for a new one.
39 |         time.sleep(0.1)
40 | 
41 |         self.shutdown()
42 |         self.thread.join()
43 |         self.socket.close()
44 | 
45 |     def base_url(self):
46 |         port = self.server_port
47 |         return 'http://127.0.0.1:%s/setuptools/tests/indexes/' % port
48 | 
49 | 
50 | class RequestRecorder(http.server.BaseHTTPRequestHandler):
51 |     def do_GET(self):
52 |         requests = vars(self.server).setdefault('requests', [])
53 |         requests.append(self)
54 |         self.send_response(200, 'OK')
55 | 
56 | 
57 | class MockServer(http.server.HTTPServer, threading.Thread):
58 |     """
59 |     A simple HTTP Server that records the requests made to it.
60 |     """
61 | 
62 |     def __init__(self, server_address=('', 0), RequestHandlerClass=RequestRecorder):
63 |         http.server.HTTPServer.__init__(self, server_address, RequestHandlerClass)
64 |         threading.Thread.__init__(self)
65 |         self.daemon = True
66 |         self.requests = []
67 | 
68 |     def run(self):
69 |         self.serve_forever()
70 | 
71 |     @property
72 |     def netloc(self):
73 |         return 'localhost:%s' % self.server_port
74 | 
75 |     @property
76 |     def url(self):
77 |         return 'http://%s/' % self.netloc
78 | 
79 | 
80 | def path_to_url(path, authority=None):
81 |     """Convert a path to a file: URL."""
82 |     path = os.path.normpath(os.path.abspath(path))
83 |     base = 'file:'
84 |     if authority is not None:
85 |         base += '//' + authority
86 |     return urllib.parse.urljoin(base, urllib.request.pathname2url(path))
87 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/tests/test_find_py_modules.py:
--------------------------------------------------------------------------------

```python
 1 | """Tests for automatic discovery of modules"""
 2 | 
 3 | import os
 4 | 
 5 | import pytest
 6 | 
 7 | from setuptools.discovery import FlatLayoutModuleFinder, ModuleFinder
 8 | 
 9 | from .compat.py39 import os_helper
10 | from .test_find_packages import ensure_files
11 | 
12 | 
13 | class TestModuleFinder:
14 |     def find(self, path, *args, **kwargs):
15 |         return set(ModuleFinder.find(str(path), *args, **kwargs))
16 | 
17 |     EXAMPLES = {
18 |         # circumstance: (files, kwargs, expected_modules)
19 |         "simple_folder": (
20 |             ["file.py", "other.py"],
21 |             {},  # kwargs
22 |             ["file", "other"],
23 |         ),
24 |         "exclude": (
25 |             ["file.py", "other.py"],
26 |             {"exclude": ["f*"]},
27 |             ["other"],
28 |         ),
29 |         "include": (
30 |             ["file.py", "fole.py", "other.py"],
31 |             {"include": ["f*"], "exclude": ["fo*"]},
32 |             ["file"],
33 |         ),
34 |         "invalid-name": (["my-file.py", "other.file.py"], {}, []),
35 |     }
36 | 
37 |     @pytest.mark.parametrize("example", EXAMPLES.keys())
38 |     def test_finder(self, tmp_path, example):
39 |         files, kwargs, expected_modules = self.EXAMPLES[example]
40 |         ensure_files(tmp_path, files)
41 |         assert self.find(tmp_path, **kwargs) == set(expected_modules)
42 | 
43 |     @pytest.mark.skipif(not os_helper.can_symlink(), reason='Symlink support required')
44 |     def test_symlinked_packages_are_included(self, tmp_path):
45 |         src = "_myfiles/file.py"
46 |         ensure_files(tmp_path, [src])
47 |         os.symlink(tmp_path / src, tmp_path / "link.py")
48 |         assert self.find(tmp_path) == {"link"}
49 | 
50 | 
51 | class TestFlatLayoutModuleFinder:
52 |     def find(self, path, *args, **kwargs):
53 |         return set(FlatLayoutModuleFinder.find(str(path)))
54 | 
55 |     EXAMPLES = {
56 |         # circumstance: (files, expected_modules)
57 |         "hidden-files": ([".module.py"], []),
58 |         "private-modules": (["_module.py"], []),
59 |         "common-names": (
60 |             ["setup.py", "conftest.py", "test.py", "tests.py", "example.py", "mod.py"],
61 |             ["mod"],
62 |         ),
63 |         "tool-specific": (
64 |             ["tasks.py", "fabfile.py", "noxfile.py", "dodo.py", "manage.py", "mod.py"],
65 |             ["mod"],
66 |         ),
67 |     }
68 | 
69 |     @pytest.mark.parametrize("example", EXAMPLES.keys())
70 |     def test_unwanted_files_not_included(self, tmp_path, example):
71 |         files, expected_modules = self.EXAMPLES[example]
72 |         ensure_files(tmp_path, files)
73 |         assert self.find(tmp_path) == set(expected_modules)
74 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/hatchling/builders/hooks/version.py:
--------------------------------------------------------------------------------

```python
 1 | from __future__ import annotations
 2 | 
 3 | from typing import Any
 4 | 
 5 | from hatchling.builders.hooks.plugin.interface import BuildHookInterface
 6 | from hatchling.version.core import VersionFile
 7 | 
 8 | 
 9 | class VersionBuildHook(BuildHookInterface):
10 |     PLUGIN_NAME = 'version'
11 | 
12 |     def __init__(self, *args: Any, **kwargs: Any) -> None:
13 |         super().__init__(*args, **kwargs)
14 | 
15 |         self.__config_path: str | None = None
16 |         self.__config_template: str | None = None
17 |         self.__config_pattern: str | bool | None = None
18 | 
19 |     @property
20 |     def config_path(self) -> str:
21 |         if self.__config_path is None:
22 |             path = self.config.get('path', '')
23 |             if not isinstance(path, str):
24 |                 message = f'Option `path` for build hook `{self.PLUGIN_NAME}` must be a string'
25 |                 raise TypeError(message)
26 | 
27 |             if not path:
28 |                 message = f'Option `path` for build hook `{self.PLUGIN_NAME}` is required'
29 |                 raise ValueError(message)
30 | 
31 |             self.__config_path = path
32 | 
33 |         return self.__config_path
34 | 
35 |     @property
36 |     def config_template(self) -> str:
37 |         if self.__config_template is None:
38 |             template = self.config.get('template', '')
39 |             if not isinstance(template, str):
40 |                 message = f'Option `template` for build hook `{self.PLUGIN_NAME}` must be a string'
41 |                 raise TypeError(message)
42 | 
43 |             self.__config_template = template
44 | 
45 |         return self.__config_template
46 | 
47 |     @property
48 |     def config_pattern(self) -> str | bool:
49 |         if self.__config_pattern is None:
50 |             pattern = self.config.get('pattern', '')
51 |             if not isinstance(pattern, (str, bool)):
52 |                 message = f'Option `pattern` for build hook `{self.PLUGIN_NAME}` must be a string or a boolean'
53 |                 raise TypeError(message)
54 | 
55 |             self.__config_pattern = pattern
56 | 
57 |         return self.__config_pattern
58 | 
59 |     def initialize(
60 |         self,
61 |         version: str,  # noqa: ARG002
62 |         build_data: dict[str, Any],
63 |     ) -> None:
64 |         version_file = VersionFile(self.root, self.config_path)
65 |         if self.config_pattern:
66 |             version_file.read(pattern=self.config_pattern)
67 |             version_file.set_version(self.metadata.version)
68 |         else:
69 |             version_file.write(self.metadata.version, self.config_template)
70 | 
71 |         build_data['artifacts'].append(f'/{self.config_path}')
72 | 
```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pip/_vendor/urllib3/filepost.py:
--------------------------------------------------------------------------------

```python
 1 | from __future__ import absolute_import
 2 | 
 3 | import binascii
 4 | import codecs
 5 | import os
 6 | from io import BytesIO
 7 | 
 8 | from .fields import RequestField
 9 | from .packages import six
10 | from .packages.six import b
11 | 
12 | writer = codecs.lookup("utf-8")[3]
13 | 
14 | 
15 | def choose_boundary():
16 |     """
17 |     Our embarrassingly-simple replacement for mimetools.choose_boundary.
18 |     """
19 |     boundary = binascii.hexlify(os.urandom(16))
20 |     if not six.PY2:
21 |         boundary = boundary.decode("ascii")
22 |     return boundary
23 | 
24 | 
25 | def iter_field_objects(fields):
26 |     """
27 |     Iterate over fields.
28 | 
29 |     Supports list of (k, v) tuples and dicts, and lists of
30 |     :class:`~urllib3.fields.RequestField`.
31 | 
32 |     """
33 |     if isinstance(fields, dict):
34 |         i = six.iteritems(fields)
35 |     else:
36 |         i = iter(fields)
37 | 
38 |     for field in i:
39 |         if isinstance(field, RequestField):
40 |             yield field
41 |         else:
42 |             yield RequestField.from_tuples(*field)
43 | 
44 | 
45 | def iter_fields(fields):
46 |     """
47 |     .. deprecated:: 1.6
48 | 
49 |     Iterate over fields.
50 | 
51 |     The addition of :class:`~urllib3.fields.RequestField` makes this function
52 |     obsolete. Instead, use :func:`iter_field_objects`, which returns
53 |     :class:`~urllib3.fields.RequestField` objects.
54 | 
55 |     Supports list of (k, v) tuples and dicts.
56 |     """
57 |     if isinstance(fields, dict):
58 |         return ((k, v) for k, v in six.iteritems(fields))
59 | 
60 |     return ((k, v) for k, v in fields)
61 | 
62 | 
63 | def encode_multipart_formdata(fields, boundary=None):
64 |     """
65 |     Encode a dictionary of ``fields`` using the multipart/form-data MIME format.
66 | 
67 |     :param fields:
68 |         Dictionary of fields or list of (key, :class:`~urllib3.fields.RequestField`).
69 | 
70 |     :param boundary:
71 |         If not specified, then a random boundary will be generated using
72 |         :func:`urllib3.filepost.choose_boundary`.
73 |     """
74 |     body = BytesIO()
75 |     if boundary is None:
76 |         boundary = choose_boundary()
77 | 
78 |     for field in iter_field_objects(fields):
79 |         body.write(b("--%s\r\n" % (boundary)))
80 | 
81 |         writer(body).write(field.render_headers())
82 |         data = field.data
83 | 
84 |         if isinstance(data, int):
85 |             data = str(data)  # Backwards compatibility
86 | 
87 |         if isinstance(data, six.text_type):
88 |             writer(body).write(data)
89 |         else:
90 |             body.write(data)
91 | 
92 |         body.write(b"\r\n")
93 | 
94 |     body.write(b("--%s--\r\n" % (boundary)))
95 | 
96 |     content_type = str("multipart/form-data; boundary=%s" % boundary)
97 | 
98 |     return body.getvalue(), content_type
99 | 
```
Page 10/236FirstPrevNextLast