#
tokens: 49744/50000 15/958 files (page 11/188)
lines: off (toggle) GitHub
raw markdown copy
This is page 11 of 188. Use http://codebase.md/seanivore/mcp-code-analyzer?lines=false&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/pip/_vendor/tomli/_re.py:
--------------------------------------------------------------------------------

```python
# SPDX-License-Identifier: MIT
# SPDX-FileCopyrightText: 2021 Taneli Hukkinen
# Licensed to PSF under a Contributor Agreement.

from __future__ import annotations

from datetime import date, datetime, time, timedelta, timezone, tzinfo
from functools import lru_cache
import re
from typing import Any

from ._types import ParseFloat

# E.g.
# - 00:32:00.999999
# - 00:32:00
_TIME_RE_STR = r"([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])(?:\.([0-9]{1,6})[0-9]*)?"

RE_NUMBER = re.compile(
    r"""
0
(?:
    x[0-9A-Fa-f](?:_?[0-9A-Fa-f])*   # hex
    |
    b[01](?:_?[01])*                 # bin
    |
    o[0-7](?:_?[0-7])*               # oct
)
|
[+-]?(?:0|[1-9](?:_?[0-9])*)         # dec, integer part
(?P<floatpart>
    (?:\.[0-9](?:_?[0-9])*)?         # optional fractional part
    (?:[eE][+-]?[0-9](?:_?[0-9])*)?  # optional exponent part
)
""",
    flags=re.VERBOSE,
)
RE_LOCALTIME = re.compile(_TIME_RE_STR)
RE_DATETIME = re.compile(
    rf"""
([0-9]{{4}})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])  # date, e.g. 1988-10-27
(?:
    [Tt ]
    {_TIME_RE_STR}
    (?:([Zz])|([+-])([01][0-9]|2[0-3]):([0-5][0-9]))?  # optional time offset
)?
""",
    flags=re.VERBOSE,
)


def match_to_datetime(match: re.Match) -> datetime | date:
    """Convert a `RE_DATETIME` match to `datetime.datetime` or `datetime.date`.

    Raises ValueError if the match does not correspond to a valid date
    or datetime.
    """
    (
        year_str,
        month_str,
        day_str,
        hour_str,
        minute_str,
        sec_str,
        micros_str,
        zulu_time,
        offset_sign_str,
        offset_hour_str,
        offset_minute_str,
    ) = match.groups()
    year, month, day = int(year_str), int(month_str), int(day_str)
    if hour_str is None:
        return date(year, month, day)
    hour, minute, sec = int(hour_str), int(minute_str), int(sec_str)
    micros = int(micros_str.ljust(6, "0")) if micros_str else 0
    if offset_sign_str:
        tz: tzinfo | None = cached_tz(
            offset_hour_str, offset_minute_str, offset_sign_str
        )
    elif zulu_time:
        tz = timezone.utc
    else:  # local date-time
        tz = None
    return datetime(year, month, day, hour, minute, sec, micros, tzinfo=tz)


@lru_cache(maxsize=None)
def cached_tz(hour_str: str, minute_str: str, sign_str: str) -> timezone:
    sign = 1 if sign_str == "+" else -1
    return timezone(
        timedelta(
            hours=sign * int(hour_str),
            minutes=sign * int(minute_str),
        )
    )


def match_to_localtime(match: re.Match) -> time:
    hour_str, minute_str, sec_str, micros_str = match.groups()
    micros = int(micros_str.ljust(6, "0")) if micros_str else 0
    return time(int(hour_str), int(minute_str), int(sec_str), micros)


def match_to_number(match: re.Match, parse_float: ParseFloat) -> Any:
    if match.group("floatpart"):
        return parse_float(match.group())
    return int(match.group(), 0)

```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/_vendor/tomli/_re.py:
--------------------------------------------------------------------------------

```python
# SPDX-License-Identifier: MIT
# SPDX-FileCopyrightText: 2021 Taneli Hukkinen
# Licensed to PSF under a Contributor Agreement.

from __future__ import annotations

from datetime import date, datetime, time, timedelta, timezone, tzinfo
from functools import lru_cache
import re
from typing import Any

from ._types import ParseFloat

# E.g.
# - 00:32:00.999999
# - 00:32:00
_TIME_RE_STR = r"([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])(?:\.([0-9]{1,6})[0-9]*)?"

RE_NUMBER = re.compile(
    r"""
0
(?:
    x[0-9A-Fa-f](?:_?[0-9A-Fa-f])*   # hex
    |
    b[01](?:_?[01])*                 # bin
    |
    o[0-7](?:_?[0-7])*               # oct
)
|
[+-]?(?:0|[1-9](?:_?[0-9])*)         # dec, integer part
(?P<floatpart>
    (?:\.[0-9](?:_?[0-9])*)?         # optional fractional part
    (?:[eE][+-]?[0-9](?:_?[0-9])*)?  # optional exponent part
)
""",
    flags=re.VERBOSE,
)
RE_LOCALTIME = re.compile(_TIME_RE_STR)
RE_DATETIME = re.compile(
    rf"""
([0-9]{{4}})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])  # date, e.g. 1988-10-27
(?:
    [Tt ]
    {_TIME_RE_STR}
    (?:([Zz])|([+-])([01][0-9]|2[0-3]):([0-5][0-9]))?  # optional time offset
)?
""",
    flags=re.VERBOSE,
)


def match_to_datetime(match: re.Match) -> datetime | date:
    """Convert a `RE_DATETIME` match to `datetime.datetime` or `datetime.date`.

    Raises ValueError if the match does not correspond to a valid date
    or datetime.
    """
    (
        year_str,
        month_str,
        day_str,
        hour_str,
        minute_str,
        sec_str,
        micros_str,
        zulu_time,
        offset_sign_str,
        offset_hour_str,
        offset_minute_str,
    ) = match.groups()
    year, month, day = int(year_str), int(month_str), int(day_str)
    if hour_str is None:
        return date(year, month, day)
    hour, minute, sec = int(hour_str), int(minute_str), int(sec_str)
    micros = int(micros_str.ljust(6, "0")) if micros_str else 0
    if offset_sign_str:
        tz: tzinfo | None = cached_tz(
            offset_hour_str, offset_minute_str, offset_sign_str
        )
    elif zulu_time:
        tz = timezone.utc
    else:  # local date-time
        tz = None
    return datetime(year, month, day, hour, minute, sec, micros, tzinfo=tz)


@lru_cache(maxsize=None)
def cached_tz(hour_str: str, minute_str: str, sign_str: str) -> timezone:
    sign = 1 if sign_str == "+" else -1
    return timezone(
        timedelta(
            hours=sign * int(hour_str),
            minutes=sign * int(minute_str),
        )
    )


def match_to_localtime(match: re.Match) -> time:
    hour_str, minute_str, sec_str, micros_str = match.groups()
    micros = int(micros_str.ljust(6, "0")) if micros_str else 0
    return time(int(hour_str), int(minute_str), int(sec_str), micros)


def match_to_number(match: re.Match, parse_float: ParseFloat) -> Any:
    if match.group("floatpart"):
        return parse_float(match.group())
    return int(match.group(), 0)

```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/packaging/requirements.py:
--------------------------------------------------------------------------------

```python
# This file is dual licensed under the terms of the Apache License, Version
# 2.0, and the BSD License. See the LICENSE file in the root of this repository
# for complete details.
from __future__ import annotations

from typing import Any, Iterator

from ._parser import parse_requirement as _parse_requirement
from ._tokenizer import ParserSyntaxError
from .markers import Marker, _normalize_extra_values
from .specifiers import SpecifierSet
from .utils import canonicalize_name


class InvalidRequirement(ValueError):
    """
    An invalid requirement was found, users should refer to PEP 508.
    """


class Requirement:
    """Parse a requirement.

    Parse a given requirement string into its parts, such as name, specifier,
    URL, and extras. Raises InvalidRequirement on a badly-formed requirement
    string.
    """

    # TODO: Can we test whether something is contained within a requirement?
    #       If so how do we do that? Do we need to test against the _name_ of
    #       the thing as well as the version? What about the markers?
    # TODO: Can we normalize the name and extra name?

    def __init__(self, requirement_string: str) -> None:
        try:
            parsed = _parse_requirement(requirement_string)
        except ParserSyntaxError as e:
            raise InvalidRequirement(str(e)) from e

        self.name: str = parsed.name
        self.url: str | None = parsed.url or None
        self.extras: set[str] = set(parsed.extras or [])
        self.specifier: SpecifierSet = SpecifierSet(parsed.specifier)
        self.marker: Marker | None = None
        if parsed.marker is not None:
            self.marker = Marker.__new__(Marker)
            self.marker._markers = _normalize_extra_values(parsed.marker)

    def _iter_parts(self, name: str) -> Iterator[str]:
        yield name

        if self.extras:
            formatted_extras = ",".join(sorted(self.extras))
            yield f"[{formatted_extras}]"

        if self.specifier:
            yield str(self.specifier)

        if self.url:
            yield f"@ {self.url}"
            if self.marker:
                yield " "

        if self.marker:
            yield f"; {self.marker}"

    def __str__(self) -> str:
        return "".join(self._iter_parts(self.name))

    def __repr__(self) -> str:
        return f"<Requirement('{self}')>"

    def __hash__(self) -> int:
        return hash(
            (
                self.__class__.__name__,
                *self._iter_parts(canonicalize_name(self.name)),
            )
        )

    def __eq__(self, other: Any) -> bool:
        if not isinstance(other, Requirement):
            return NotImplemented

        return (
            canonicalize_name(self.name) == canonicalize_name(other.name)
            and self.extras == other.extras
            and self.specifier == other.specifier
            and self.url == other.url
            and self.marker == other.marker
        )

```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pip/_vendor/packaging/requirements.py:
--------------------------------------------------------------------------------

```python
# This file is dual licensed under the terms of the Apache License, Version
# 2.0, and the BSD License. See the LICENSE file in the root of this repository
# for complete details.
from __future__ import annotations

from typing import Any, Iterator

from ._parser import parse_requirement as _parse_requirement
from ._tokenizer import ParserSyntaxError
from .markers import Marker, _normalize_extra_values
from .specifiers import SpecifierSet
from .utils import canonicalize_name


class InvalidRequirement(ValueError):
    """
    An invalid requirement was found, users should refer to PEP 508.
    """


class Requirement:
    """Parse a requirement.

    Parse a given requirement string into its parts, such as name, specifier,
    URL, and extras. Raises InvalidRequirement on a badly-formed requirement
    string.
    """

    # TODO: Can we test whether something is contained within a requirement?
    #       If so how do we do that? Do we need to test against the _name_ of
    #       the thing as well as the version? What about the markers?
    # TODO: Can we normalize the name and extra name?

    def __init__(self, requirement_string: str) -> None:
        try:
            parsed = _parse_requirement(requirement_string)
        except ParserSyntaxError as e:
            raise InvalidRequirement(str(e)) from e

        self.name: str = parsed.name
        self.url: str | None = parsed.url or None
        self.extras: set[str] = set(parsed.extras or [])
        self.specifier: SpecifierSet = SpecifierSet(parsed.specifier)
        self.marker: Marker | None = None
        if parsed.marker is not None:
            self.marker = Marker.__new__(Marker)
            self.marker._markers = _normalize_extra_values(parsed.marker)

    def _iter_parts(self, name: str) -> Iterator[str]:
        yield name

        if self.extras:
            formatted_extras = ",".join(sorted(self.extras))
            yield f"[{formatted_extras}]"

        if self.specifier:
            yield str(self.specifier)

        if self.url:
            yield f"@ {self.url}"
            if self.marker:
                yield " "

        if self.marker:
            yield f"; {self.marker}"

    def __str__(self) -> str:
        return "".join(self._iter_parts(self.name))

    def __repr__(self) -> str:
        return f"<Requirement('{self}')>"

    def __hash__(self) -> int:
        return hash(
            (
                self.__class__.__name__,
                *self._iter_parts(canonicalize_name(self.name)),
            )
        )

    def __eq__(self, other: Any) -> bool:
        if not isinstance(other, Requirement):
            return NotImplemented

        return (
            canonicalize_name(self.name) == canonicalize_name(other.name)
            and self.extras == other.extras
            and self.specifier == other.specifier
            and self.url == other.url
            and self.marker == other.marker
        )

```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/_vendor/packaging/requirements.py:
--------------------------------------------------------------------------------

```python
# This file is dual licensed under the terms of the Apache License, Version
# 2.0, and the BSD License. See the LICENSE file in the root of this repository
# for complete details.
from __future__ import annotations

from typing import Any, Iterator

from ._parser import parse_requirement as _parse_requirement
from ._tokenizer import ParserSyntaxError
from .markers import Marker, _normalize_extra_values
from .specifiers import SpecifierSet
from .utils import canonicalize_name


class InvalidRequirement(ValueError):
    """
    An invalid requirement was found, users should refer to PEP 508.
    """


class Requirement:
    """Parse a requirement.

    Parse a given requirement string into its parts, such as name, specifier,
    URL, and extras. Raises InvalidRequirement on a badly-formed requirement
    string.
    """

    # TODO: Can we test whether something is contained within a requirement?
    #       If so how do we do that? Do we need to test against the _name_ of
    #       the thing as well as the version? What about the markers?
    # TODO: Can we normalize the name and extra name?

    def __init__(self, requirement_string: str) -> None:
        try:
            parsed = _parse_requirement(requirement_string)
        except ParserSyntaxError as e:
            raise InvalidRequirement(str(e)) from e

        self.name: str = parsed.name
        self.url: str | None = parsed.url or None
        self.extras: set[str] = set(parsed.extras or [])
        self.specifier: SpecifierSet = SpecifierSet(parsed.specifier)
        self.marker: Marker | None = None
        if parsed.marker is not None:
            self.marker = Marker.__new__(Marker)
            self.marker._markers = _normalize_extra_values(parsed.marker)

    def _iter_parts(self, name: str) -> Iterator[str]:
        yield name

        if self.extras:
            formatted_extras = ",".join(sorted(self.extras))
            yield f"[{formatted_extras}]"

        if self.specifier:
            yield str(self.specifier)

        if self.url:
            yield f"@ {self.url}"
            if self.marker:
                yield " "

        if self.marker:
            yield f"; {self.marker}"

    def __str__(self) -> str:
        return "".join(self._iter_parts(self.name))

    def __repr__(self) -> str:
        return f"<Requirement('{self}')>"

    def __hash__(self) -> int:
        return hash(
            (
                self.__class__.__name__,
                *self._iter_parts(canonicalize_name(self.name)),
            )
        )

    def __eq__(self, other: Any) -> bool:
        if not isinstance(other, Requirement):
            return NotImplemented

        return (
            canonicalize_name(self.name) == canonicalize_name(other.name)
            and self.extras == other.extras
            and self.specifier == other.specifier
            and self.url == other.url
            and self.marker == other.marker
        )

```

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

```python
import os
import platform
import sys
import sysconfig
import textwrap
from distutils import ccompiler

import pytest


def _make_strs(paths):
    """
    Convert paths to strings for legacy compatibility.
    """
    if sys.version_info > (3, 8) and platform.system() != "Windows":
        return paths
    return list(map(os.fspath, paths))


@pytest.fixture
def c_file(tmp_path):
    c_file = tmp_path / 'foo.c'
    gen_headers = ('Python.h',)
    is_windows = platform.system() == "Windows"
    plat_headers = ('windows.h',) * is_windows
    all_headers = gen_headers + plat_headers
    headers = '\n'.join(f'#include <{header}>\n' for header in all_headers)
    payload = (
        textwrap.dedent(
            """
        #headers
        void PyInit_foo(void) {}
        """
        )
        .lstrip()
        .replace('#headers', headers)
    )
    c_file.write_text(payload, encoding='utf-8')
    return c_file


def test_set_include_dirs(c_file):
    """
    Extensions should build even if set_include_dirs is invoked.
    In particular, compiler-specific paths should not be overridden.
    """
    compiler = ccompiler.new_compiler()
    python = sysconfig.get_paths()['include']
    compiler.set_include_dirs([python])
    compiler.compile(_make_strs([c_file]))

    # do it again, setting include dirs after any initialization
    compiler.set_include_dirs([python])
    compiler.compile(_make_strs([c_file]))


def test_has_function_prototype():
    # Issue https://github.com/pypa/setuptools/issues/3648
    # Test prototype-generating behavior.

    compiler = ccompiler.new_compiler()

    # Every C implementation should have these.
    assert compiler.has_function('abort')
    assert compiler.has_function('exit')
    with pytest.deprecated_call(match='includes is deprecated'):
        # abort() is a valid expression with the <stdlib.h> prototype.
        assert compiler.has_function('abort', includes=['stdlib.h'])
    with pytest.deprecated_call(match='includes is deprecated'):
        # But exit() is not valid with the actual prototype in scope.
        assert not compiler.has_function('exit', includes=['stdlib.h'])
    # And setuptools_does_not_exist is not declared or defined at all.
    assert not compiler.has_function('setuptools_does_not_exist')
    with pytest.deprecated_call(match='includes is deprecated'):
        assert not compiler.has_function(
            'setuptools_does_not_exist', includes=['stdio.h']
        )


def test_include_dirs_after_multiple_compile_calls(c_file):
    """
    Calling compile multiple times should not change the include dirs
    (regression test for setuptools issue #3591).
    """
    compiler = ccompiler.new_compiler()
    python = sysconfig.get_paths()['include']
    compiler.set_include_dirs([python])
    compiler.compile(_make_strs([c_file]))
    assert compiler.include_dirs == [python]
    compiler.compile(_make_strs([c_file]))
    assert compiler.include_dirs == [python]

```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pip/_vendor/pygments/__init__.py:
--------------------------------------------------------------------------------

```python
"""
    Pygments
    ~~~~~~~~

    Pygments is a syntax highlighting package written in Python.

    It is a generic syntax highlighter for general use in all kinds of software
    such as forum systems, wikis or other applications that need to prettify
    source code. Highlights are:

    * a wide range of common languages and markup formats is supported
    * special attention is paid to details, increasing quality by a fair amount
    * support for new languages and formats are added easily
    * a number of output formats, presently HTML, LaTeX, RTF, SVG, all image
      formats that PIL supports, and ANSI sequences
    * it is usable as a command-line tool and as a library
    * ... and it highlights even Brainfuck!

    The `Pygments master branch`_ is installable with ``easy_install Pygments==dev``.

    .. _Pygments master branch:
       https://github.com/pygments/pygments/archive/master.zip#egg=Pygments-dev

    :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
"""
from io import StringIO, BytesIO

__version__ = '2.18.0'
__docformat__ = 'restructuredtext'

__all__ = ['lex', 'format', 'highlight']


def lex(code, lexer):
    """
    Lex `code` with the `lexer` (must be a `Lexer` instance)
    and return an iterable of tokens. Currently, this only calls
    `lexer.get_tokens()`.
    """
    try:
        return lexer.get_tokens(code)
    except TypeError:
        # Heuristic to catch a common mistake.
        from pip._vendor.pygments.lexer import RegexLexer
        if isinstance(lexer, type) and issubclass(lexer, RegexLexer):
            raise TypeError('lex() argument must be a lexer instance, '
                            'not a class')
        raise


def format(tokens, formatter, outfile=None):  # pylint: disable=redefined-builtin
    """
    Format ``tokens`` (an iterable of tokens) with the formatter ``formatter``
    (a `Formatter` instance).

    If ``outfile`` is given and a valid file object (an object with a
    ``write`` method), the result will be written to it, otherwise it
    is returned as a string.
    """
    try:
        if not outfile:
            realoutfile = getattr(formatter, 'encoding', None) and BytesIO() or StringIO()
            formatter.format(tokens, realoutfile)
            return realoutfile.getvalue()
        else:
            formatter.format(tokens, outfile)
    except TypeError:
        # Heuristic to catch a common mistake.
        from pip._vendor.pygments.formatter import Formatter
        if isinstance(formatter, type) and issubclass(formatter, Formatter):
            raise TypeError('format() argument must be a formatter instance, '
                            'not a class')
        raise


def highlight(code, lexer, formatter, outfile=None):
    """
    This is the most high-level highlighting function. It combines `lex` and
    `format` in one function.
    """
    return format(lex(code, lexer), formatter, outfile)

```

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

```python
"""setuptools.errors

Provides exceptions used by setuptools modules.
"""

from __future__ import annotations

from typing import TYPE_CHECKING

from distutils import errors as _distutils_errors

if TYPE_CHECKING:
    from typing_extensions import TypeAlias

# Re-export errors from distutils to facilitate the migration to PEP632

ByteCompileError: TypeAlias = _distutils_errors.DistutilsByteCompileError
CCompilerError: TypeAlias = _distutils_errors.CCompilerError
ClassError: TypeAlias = _distutils_errors.DistutilsClassError
CompileError: TypeAlias = _distutils_errors.CompileError
ExecError: TypeAlias = _distutils_errors.DistutilsExecError
FileError: TypeAlias = _distutils_errors.DistutilsFileError
InternalError: TypeAlias = _distutils_errors.DistutilsInternalError
LibError: TypeAlias = _distutils_errors.LibError
LinkError: TypeAlias = _distutils_errors.LinkError
ModuleError: TypeAlias = _distutils_errors.DistutilsModuleError
OptionError: TypeAlias = _distutils_errors.DistutilsOptionError
PlatformError: TypeAlias = _distutils_errors.DistutilsPlatformError
PreprocessError: TypeAlias = _distutils_errors.PreprocessError
SetupError: TypeAlias = _distutils_errors.DistutilsSetupError
TemplateError: TypeAlias = _distutils_errors.DistutilsTemplateError
UnknownFileError: TypeAlias = _distutils_errors.UnknownFileError

# The root error class in the hierarchy
BaseError: TypeAlias = _distutils_errors.DistutilsError


class InvalidConfigError(OptionError):
    """Error used for invalid configurations."""


class RemovedConfigError(OptionError):
    """Error used for configurations that were deprecated and removed."""


class RemovedCommandError(BaseError, RuntimeError):
    """Error used for commands that have been removed in setuptools.

    Since ``setuptools`` is built on ``distutils``, simply removing a command
    from ``setuptools`` will make the behavior fall back to ``distutils``; this
    error is raised if a command exists in ``distutils`` but has been actively
    removed in ``setuptools``.
    """


class PackageDiscoveryError(BaseError, RuntimeError):
    """Impossible to perform automatic discovery of packages and/or modules.

    The current project layout or given discovery options can lead to problems when
    scanning the project directory.

    Setuptools might also refuse to complete auto-discovery if an error prone condition
    is detected (e.g. when a project is organised as a flat-layout but contains
    multiple directories that can be taken as top-level packages inside a single
    distribution [*]_). In these situations the users are encouraged to be explicit
    about which packages to include or to make the discovery parameters more specific.

    .. [*] Since multi-package distributions are uncommon it is very likely that the
       developers did not intend for all the directories to be packaged, and are just
       leaving auxiliary code in the repository top-level, such as maintenance-related
       scripts.
    """

```

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

```python
import itertools
import os
import shutil
import sys
from typing import List, Optional

from pip._internal.cli.main import main
from pip._internal.utils.compat import WINDOWS

_EXECUTABLE_NAMES = [
    "pip",
    f"pip{sys.version_info.major}",
    f"pip{sys.version_info.major}.{sys.version_info.minor}",
]
if WINDOWS:
    _allowed_extensions = {"", ".exe"}
    _EXECUTABLE_NAMES = [
        "".join(parts)
        for parts in itertools.product(_EXECUTABLE_NAMES, _allowed_extensions)
    ]


def _wrapper(args: Optional[List[str]] = None) -> int:
    """Central wrapper for all old entrypoints.

    Historically pip has had several entrypoints defined. Because of issues
    arising from PATH, sys.path, multiple Pythons, their interactions, and most
    of them having a pip installed, users suffer every time an entrypoint gets
    moved.

    To alleviate this pain, and provide a mechanism for warning users and
    directing them to an appropriate place for help, we now define all of
    our old entrypoints as wrappers for the current one.
    """
    sys.stderr.write(
        "WARNING: pip is being invoked by an old script wrapper. This will "
        "fail in a future version of pip.\n"
        "Please see https://github.com/pypa/pip/issues/5599 for advice on "
        "fixing the underlying issue.\n"
        "To avoid this problem you can invoke Python with '-m pip' instead of "
        "running pip directly.\n"
    )
    return main(args)


def get_best_invocation_for_this_pip() -> str:
    """Try to figure out the best way to invoke pip in the current environment."""
    binary_directory = "Scripts" if WINDOWS else "bin"
    binary_prefix = os.path.join(sys.prefix, binary_directory)

    # Try to use pip[X[.Y]] names, if those executables for this environment are
    # the first on PATH with that name.
    path_parts = os.path.normcase(os.environ.get("PATH", "")).split(os.pathsep)
    exe_are_in_PATH = os.path.normcase(binary_prefix) in path_parts
    if exe_are_in_PATH:
        for exe_name in _EXECUTABLE_NAMES:
            found_executable = shutil.which(exe_name)
            binary_executable = os.path.join(binary_prefix, exe_name)
            if (
                found_executable
                and os.path.exists(binary_executable)
                and os.path.samefile(
                    found_executable,
                    binary_executable,
                )
            ):
                return exe_name

    # Use the `-m` invocation, if there's no "nice" invocation.
    return f"{get_best_invocation_for_this_python()} -m pip"


def get_best_invocation_for_this_python() -> str:
    """Try to figure out the best way to invoke the current Python."""
    exe = sys.executable
    exe_name = os.path.basename(exe)

    # Try to use the basename, if it's the first executable.
    found_executable = shutil.which(exe_name)
    if found_executable and os.path.samefile(found_executable, exe):
        return exe_name

    # Use the full executable name, because we couldn't find something simpler.
    return exe

```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pip/_vendor/pygments/regexopt.py:
--------------------------------------------------------------------------------

```python
"""
    pygments.regexopt
    ~~~~~~~~~~~~~~~~~

    An algorithm that generates optimized regexes for matching long lists of
    literal strings.

    :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
"""

import re
from re import escape
from os.path import commonprefix
from itertools import groupby
from operator import itemgetter

CS_ESCAPE = re.compile(r'[\[\^\\\-\]]')
FIRST_ELEMENT = itemgetter(0)


def make_charset(letters):
    return '[' + CS_ESCAPE.sub(lambda m: '\\' + m.group(), ''.join(letters)) + ']'


def regex_opt_inner(strings, open_paren):
    """Return a regex that matches any string in the sorted list of strings."""
    close_paren = open_paren and ')' or ''
    # print strings, repr(open_paren)
    if not strings:
        # print '-> nothing left'
        return ''
    first = strings[0]
    if len(strings) == 1:
        # print '-> only 1 string'
        return open_paren + escape(first) + close_paren
    if not first:
        # print '-> first string empty'
        return open_paren + regex_opt_inner(strings[1:], '(?:') \
            + '?' + close_paren
    if len(first) == 1:
        # multiple one-char strings? make a charset
        oneletter = []
        rest = []
        for s in strings:
            if len(s) == 1:
                oneletter.append(s)
            else:
                rest.append(s)
        if len(oneletter) > 1:  # do we have more than one oneletter string?
            if rest:
                # print '-> 1-character + rest'
                return open_paren + regex_opt_inner(rest, '') + '|' \
                    + make_charset(oneletter) + close_paren
            # print '-> only 1-character'
            return open_paren + make_charset(oneletter) + close_paren
    prefix = commonprefix(strings)
    if prefix:
        plen = len(prefix)
        # we have a prefix for all strings
        # print '-> prefix:', prefix
        return open_paren + escape(prefix) \
            + regex_opt_inner([s[plen:] for s in strings], '(?:') \
            + close_paren
    # is there a suffix?
    strings_rev = [s[::-1] for s in strings]
    suffix = commonprefix(strings_rev)
    if suffix:
        slen = len(suffix)
        # print '-> suffix:', suffix[::-1]
        return open_paren \
            + regex_opt_inner(sorted(s[:-slen] for s in strings), '(?:') \
            + escape(suffix[::-1]) + close_paren
    # recurse on common 1-string prefixes
    # print '-> last resort'
    return open_paren + \
        '|'.join(regex_opt_inner(list(group[1]), '')
                 for group in groupby(strings, lambda s: s[0] == first[0])) \
        + close_paren


def regex_opt(strings, prefix='', suffix=''):
    """Return a compiled regex that matches any string in the given list.

    The strings to match must be literal strings, not regexes.  They will be
    regex-escaped.

    *prefix* and *suffix* are pre- and appended to the final regex.
    """
    strings = sorted(strings)
    return prefix + regex_opt_inner(strings, '(') + suffix

```

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

```python
from inspect import cleandoc

import pytest
from jaraco import path

from setuptools.config.pyprojecttoml import apply_configuration
from setuptools.dist import Distribution


def test_dynamic_dependencies(tmp_path):
    files = {
        "requirements.txt": "six\n  # comment\n",
        "pyproject.toml": cleandoc(
            """
            [project]
            name = "myproj"
            version = "1.0"
            dynamic = ["dependencies"]

            [build-system]
            requires = ["setuptools", "wheel"]
            build-backend = "setuptools.build_meta"

            [tool.setuptools.dynamic.dependencies]
            file = ["requirements.txt"]
            """
        ),
    }
    path.build(files, prefix=tmp_path)
    dist = Distribution()
    dist = apply_configuration(dist, tmp_path / "pyproject.toml")
    assert dist.install_requires == ["six"]


def test_dynamic_optional_dependencies(tmp_path):
    files = {
        "requirements-docs.txt": "sphinx\n  # comment\n",
        "pyproject.toml": cleandoc(
            """
            [project]
            name = "myproj"
            version = "1.0"
            dynamic = ["optional-dependencies"]

            [tool.setuptools.dynamic.optional-dependencies.docs]
            file = ["requirements-docs.txt"]

            [build-system]
            requires = ["setuptools", "wheel"]
            build-backend = "setuptools.build_meta"
            """
        ),
    }
    path.build(files, prefix=tmp_path)
    dist = Distribution()
    dist = apply_configuration(dist, tmp_path / "pyproject.toml")
    assert dist.extras_require == {"docs": ["sphinx"]}


def test_mixed_dynamic_optional_dependencies(tmp_path):
    """
    Test that if PEP 621 was loosened to allow mixing of dynamic and static
    configurations in the case of fields containing sub-fields (groups),
    things would work out.
    """
    files = {
        "requirements-images.txt": "pillow~=42.0\n  # comment\n",
        "pyproject.toml": cleandoc(
            """
            [project]
            name = "myproj"
            version = "1.0"
            dynamic = ["optional-dependencies"]

            [project.optional-dependencies]
            docs = ["sphinx"]

            [tool.setuptools.dynamic.optional-dependencies.images]
            file = ["requirements-images.txt"]

            [build-system]
            requires = ["setuptools", "wheel"]
            build-backend = "setuptools.build_meta"
            """
        ),
    }

    path.build(files, prefix=tmp_path)

    # Test that the mix-and-match doesn't currently validate.
    pyproject = tmp_path / "pyproject.toml"
    with pytest.raises(ValueError, match="project.optional-dependencies"):
        apply_configuration(Distribution(), pyproject)

    # Explicitly disable the validation and try again, to see that the mix-and-match
    # result would be correct.
    dist = Distribution()
    dist = apply_configuration(dist, pyproject, ignore_option_errors=True)
    assert dist.extras_require == {"docs": ["sphinx"], "images": ["pillow~=42.0"]}

```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/setuptools/_vendor/zipp/glob.py:
--------------------------------------------------------------------------------

```python
import os
import re


_default_seps = os.sep + str(os.altsep) * bool(os.altsep)


class Translator:
    """
    >>> Translator('xyz')
    Traceback (most recent call last):
    ...
    AssertionError: Invalid separators

    >>> Translator('')
    Traceback (most recent call last):
    ...
    AssertionError: Invalid separators
    """

    seps: str

    def __init__(self, seps: str = _default_seps):
        assert seps and set(seps) <= set(_default_seps), "Invalid separators"
        self.seps = seps

    def translate(self, pattern):
        """
        Given a glob pattern, produce a regex that matches it.
        """
        return self.extend(self.translate_core(pattern))

    def extend(self, pattern):
        r"""
        Extend regex for pattern-wide concerns.

        Apply '(?s:)' to create a non-matching group that
        matches newlines (valid on Unix).

        Append '\Z' to imply fullmatch even when match is used.
        """
        return rf'(?s:{pattern})\Z'

    def translate_core(self, pattern):
        r"""
        Given a glob pattern, produce a regex that matches it.

        >>> t = Translator()
        >>> t.translate_core('*.txt').replace('\\\\', '')
        '[^/]*\\.txt'
        >>> t.translate_core('a?txt')
        'a[^/]txt'
        >>> t.translate_core('**/*').replace('\\\\', '')
        '.*/[^/][^/]*'
        """
        self.restrict_rglob(pattern)
        return ''.join(map(self.replace, separate(self.star_not_empty(pattern))))

    def replace(self, match):
        """
        Perform the replacements for a match from :func:`separate`.
        """
        return match.group('set') or (
            re.escape(match.group(0))
            .replace('\\*\\*', r'.*')
            .replace('\\*', rf'[^{re.escape(self.seps)}]*')
            .replace('\\?', r'[^/]')
        )

    def restrict_rglob(self, pattern):
        """
        Raise ValueError if ** appears in anything but a full path segment.

        >>> Translator().translate('**foo')
        Traceback (most recent call last):
        ...
        ValueError: ** must appear alone in a path segment
        """
        seps_pattern = rf'[{re.escape(self.seps)}]+'
        segments = re.split(seps_pattern, pattern)
        if any('**' in segment and segment != '**' for segment in segments):
            raise ValueError("** must appear alone in a path segment")

    def star_not_empty(self, pattern):
        """
        Ensure that * will not match an empty segment.
        """

        def handle_segment(match):
            segment = match.group(0)
            return '?*' if segment == '*' else segment

        not_seps_pattern = rf'[^{re.escape(self.seps)}]+'
        return re.sub(not_seps_pattern, handle_segment, pattern)


def separate(pattern):
    """
    Separate out character sets to avoid translating their contents.

    >>> [m.group(0) for m in separate('*.txt')]
    ['*.txt']
    >>> [m.group(0) for m in separate('a[?]txt')]
    ['a', '[?]', 'txt']
    """
    return re.finditer(r'([^\[]+)|(?P<set>[\[].*?[\]])|([\[][^\]]*$)', pattern)

```

--------------------------------------------------------------------------------
/venv/lib/python3.11/site-packages/pip/_vendor/pygments/scanner.py:
--------------------------------------------------------------------------------

```python
"""
    pygments.scanner
    ~~~~~~~~~~~~~~~~

    This library implements a regex based scanner. Some languages
    like Pascal are easy to parse but have some keywords that
    depend on the context. Because of this it's impossible to lex
    that just by using a regular expression lexer like the
    `RegexLexer`.

    Have a look at the `DelphiLexer` to get an idea of how to use
    this scanner.

    :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
"""
import re


class EndOfText(RuntimeError):
    """
    Raise if end of text is reached and the user
    tried to call a match function.
    """


class Scanner:
    """
    Simple scanner

    All method patterns are regular expression strings (not
    compiled expressions!)
    """

    def __init__(self, text, flags=0):
        """
        :param text:    The text which should be scanned
        :param flags:   default regular expression flags
        """
        self.data = text
        self.data_length = len(text)
        self.start_pos = 0
        self.pos = 0
        self.flags = flags
        self.last = None
        self.match = None
        self._re_cache = {}

    def eos(self):
        """`True` if the scanner reached the end of text."""
        return self.pos >= self.data_length
    eos = property(eos, eos.__doc__)

    def check(self, pattern):
        """
        Apply `pattern` on the current position and return
        the match object. (Doesn't touch pos). Use this for
        lookahead.
        """
        if self.eos:
            raise EndOfText()
        if pattern not in self._re_cache:
            self._re_cache[pattern] = re.compile(pattern, self.flags)
        return self._re_cache[pattern].match(self.data, self.pos)

    def test(self, pattern):
        """Apply a pattern on the current position and check
        if it patches. Doesn't touch pos.
        """
        return self.check(pattern) is not None

    def scan(self, pattern):
        """
        Scan the text for the given pattern and update pos/match
        and related fields. The return value is a boolean that
        indicates if the pattern matched. The matched value is
        stored on the instance as ``match``, the last value is
        stored as ``last``. ``start_pos`` is the position of the
        pointer before the pattern was matched, ``pos`` is the
        end position.
        """
        if self.eos:
            raise EndOfText()
        if pattern not in self._re_cache:
            self._re_cache[pattern] = re.compile(pattern, self.flags)
        self.last = self.match
        m = self._re_cache[pattern].match(self.data, self.pos)
        if m is None:
            return False
        self.start_pos = m.start()
        self.pos = m.end()
        self.match = m.group()
        return True

    def get_char(self):
        """Scan exactly one char."""
        self.scan('.')

    def __repr__(self):
        return '<%s %d/%d>' % (
            self.__class__.__name__,
            self.pos,
            self.data_length
        )

```

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

```python
"""Tests for distutils.extension."""

import os
import pathlib
import warnings
from distutils.extension import Extension, read_setup_file

import pytest

from .compat.py38 import check_warnings


class TestExtension:
    def test_read_setup_file(self):
        # trying to read a Setup file
        # (sample extracted from the PyGame project)
        setup = os.path.join(os.path.dirname(__file__), 'Setup.sample')

        exts = read_setup_file(setup)
        names = [ext.name for ext in exts]
        names.sort()

        # here are the extensions read_setup_file should have created
        # out of the file
        wanted = [
            '_arraysurfarray',
            '_camera',
            '_numericsndarray',
            '_numericsurfarray',
            'base',
            'bufferproxy',
            'cdrom',
            'color',
            'constants',
            'display',
            'draw',
            'event',
            'fastevent',
            'font',
            'gfxdraw',
            'image',
            'imageext',
            'joystick',
            'key',
            'mask',
            'mixer',
            'mixer_music',
            'mouse',
            'movie',
            'overlay',
            'pixelarray',
            'pypm',
            'rect',
            'rwobject',
            'scrap',
            'surface',
            'surflock',
            'time',
            'transform',
        ]

        assert names == wanted

    def test_extension_init(self):
        # the first argument, which is the name, must be a string
        with pytest.raises(AssertionError):
            Extension(1, [])
        ext = Extension('name', [])
        assert ext.name == 'name'

        # the second argument, which is the list of files, must
        # be a list of strings or PathLike objects
        with pytest.raises(AssertionError):
            Extension('name', 'file')
        with pytest.raises(AssertionError):
            Extension('name', ['file', 1])
        ext = Extension('name', ['file1', 'file2'])
        assert ext.sources == ['file1', 'file2']
        ext = Extension('name', [pathlib.Path('file1'), pathlib.Path('file2')])
        assert ext.sources == ['file1', 'file2']

        # others arguments have defaults
        for attr in (
            'include_dirs',
            'define_macros',
            'undef_macros',
            'library_dirs',
            'libraries',
            'runtime_library_dirs',
            'extra_objects',
            'extra_compile_args',
            'extra_link_args',
            'export_symbols',
            'swig_opts',
            'depends',
        ):
            assert getattr(ext, attr) == []

        assert ext.language is None
        assert ext.optional is None

        # if there are unknown keyword options, warn about them
        with check_warnings() as w:
            warnings.simplefilter('always')
            ext = Extension('name', ['file1', 'file2'], chic=True)

        assert len(w.warnings) == 1
        assert str(w.warnings[0].message) == "Unknown Extension options: 'chic'"

```

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

```python
import os
import subprocess
import sys
import unicodedata
from subprocess import PIPE as _PIPE, Popen as _Popen

import jaraco.envs


class VirtualEnv(jaraco.envs.VirtualEnv):
    name = '.env'
    # Some version of PyPy will import distutils on startup, implicitly
    # importing setuptools, and thus leading to BackendInvalid errors
    # when upgrading Setuptools. Bypass this behavior by avoiding the
    # early availability and need to upgrade.
    create_opts = ['--no-setuptools']

    def run(self, cmd, *args, **kwargs):
        cmd = [self.exe(cmd[0])] + cmd[1:]
        kwargs = {"cwd": self.root, "encoding": "utf-8", **kwargs}  # Allow overriding
        # In some environments (eg. downstream distro packaging), where:
        # - tox isn't used to run tests and
        # - PYTHONPATH is set to point to a specific setuptools codebase and
        # - no custom env is explicitly set by a test
        # PYTHONPATH will leak into the spawned processes.
        # In that case tests look for module in the wrong place (on PYTHONPATH).
        # Unless the test sets its own special env, pass a copy of the existing
        # environment with removed PYTHONPATH to the subprocesses.
        if "env" not in kwargs:
            env = dict(os.environ)
            if "PYTHONPATH" in env:
                del env["PYTHONPATH"]
            kwargs["env"] = env
        return subprocess.check_output(cmd, *args, **kwargs)


def _which_dirs(cmd):
    result = set()
    for path in os.environ.get('PATH', '').split(os.pathsep):
        filename = os.path.join(path, cmd)
        if os.access(filename, os.X_OK):
            result.add(path)
    return result


def run_setup_py(cmd, pypath=None, path=None, data_stream=0, env=None):
    """
    Execution command for tests, separate from those used by the
    code directly to prevent accidental behavior issues
    """
    if env is None:
        env = dict()
        for envname in os.environ:
            env[envname] = os.environ[envname]

    # override the python path if needed
    if pypath is not None:
        env["PYTHONPATH"] = pypath

    # override the execution path if needed
    if path is not None:
        env["PATH"] = path
    if not env.get("PATH", ""):
        env["PATH"] = _which_dirs("tar").union(_which_dirs("gzip"))
        env["PATH"] = os.pathsep.join(env["PATH"])

    cmd = [sys.executable, "setup.py"] + list(cmd)

    # https://bugs.python.org/issue8557
    shell = sys.platform == 'win32'

    try:
        proc = _Popen(
            cmd,
            stdout=_PIPE,
            stderr=_PIPE,
            shell=shell,
            env=env,
            encoding="utf-8",
        )

        if isinstance(data_stream, tuple):
            data_stream = slice(*data_stream)
        data = proc.communicate()[data_stream]
    except OSError:
        return 1, ''

    # decode the console string if needed
    if hasattr(data, "decode"):
        # use the default encoding
        data = data.decode()
        data = unicodedata.normalize('NFC', data)

    # communicate calls wait()
    return proc.returncode, data

```
Page 11/188FirstPrevNextLast