```python
"""Match a slash-separated route pattern against a request path."""


def match_route(pattern: str, path: str) -> dict | None:
    """Return captured segments as a dict, or None when there is no match."""
    if not pattern or pattern == "/":
        return None
    if pattern.startswith("/"):
        pattern = pattern[1:]
    if pattern.endswith("/"):
        pattern = pattern[:-1]
    if pattern == "/":
        return {}
    if pattern.startswith("**"):
        return {}
    if pattern.startswith(":"):
        return {}
    if pattern.endswith("**"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/"):
        return {}
    if pattern.endswith("/