```python
def hop_chain(hops: list) -> bool:
    """Determine if a list of hops forms a single unbroken chain.

    A chain is unbroken if every hop starts where the previous hop ended.
    An empty list or a single hop is considered unbroken.

    Args:
        hops: A list of pairs, where each pair is a start and end location.

    Returns:
        True if the hops form a single unbroken chain, False otherwise.
    """
    if not hops:
        return True
    for i in range(1, len(hops)):
        if hops[i][0] != hops[i - 1][1]:
            return False
    return True
```