def METHOD_NAME(
    left_base: bytes,
    right_base: bytes,
    out: bytes,
) -> Iterator[bytes]:
    """
    Parse the output of `LANG=C diff --brief --recursive` as a quick and dirty
    comparison of filesystem contents.  See `subvol_diff` for what should be the
    long-term approach to replace this.
    In this mode, `diff` only outputs 2 types of lines. We match for both:
      - "Files left/x and right/x differ" -- yield "x"
      - "Only in left_or_right/foo: bar" -- yield "foo/bar".  This could also
        defensibly return "foo", but the upside of returning "foo/bar" is that
        our fuzzy matching (_PATH_PATTERNS_EXPECTED_TO_DIFFER) can then ignore
        stuff that exists only in one image (i.e.  we don't care if it exists or
        not).
    """
    left_base = left_base.rstrip(b"/") + b"/"
    right_base = right_base.rstrip(b"/") + b"/"
    assert not left_base.startswith(right_base) and not right_base.startswith(
        left_base
    ), (
        left_base,
        right_base,
    )
    for l in out.splitlines():
        m = re.match(b"Files (.*) and (.*) differ$", l)
        if m:
            assert all(b" and " not in g for g in m.groups()), ("ambiguous", l)
            left, right = m.groups()
            assert left.startswith(left_base) and right.startswith(right_base), (
                left_base,
                right_base,
                l,
            )
            left = os.path.relpath(left, left_base)
            right = os.path.relpath(right, right_base)
            assert left == right, l
            log.info(f"File differs {left}")
            yield left
            continue
        m = re.match(b"Only in (.*): ([^/]*)$", l)
        if m:
            left_or_right, lacks_counterpart = m.groups()
            assert not re.match(b".*: [^/]*$", left_or_right), ("ambigous", l)
            left_or_right += b"/"
            if left_or_right.startswith(left_base):
                left_or_right = os.path.relpath(left_or_right, left_base)
            elif left_or_right.startswith(right_base):
                left_or_right = os.path.relpath(left_or_right, right_base)
            else:
                raise AssertionError(
                    f"Neither left nor right {left_base} {right_base} {l}"
                )
            log.info(f"Dir differs {left_or_right}: {lacks_counterpart}")
            yield left_or_right + b"/" + lacks_counterpart
            continue
        raise NotImplementedError(f"diff line {l}")