def METHOD_NAME(s: str) -> Iterator[str]:
    for part in _legacy_version_component_re.split(s):
        part = _legacy_version_replacement_map.get(part, part)
        if not part or part == ".":
            continue
        if part[:1] in "0123456789":
            # pad for numeric comparison
            yield part.zfill(8)
        else:
            yield "*" + part
    # ensure that alpha/beta/candidate are before final
    yield "*final"