def METHOD_NAME() -> str:
    with open(VERSIONS_FILE, "r", encoding="utf-8") as fd:
        versions = [line.split(maxsplit=1)[0][1:] for line in fd.readlines()]
    # The versions in VERSIONS_FILE are ordered ascending, so the first one is
    # the greatest one. We may have supported versions in the previous year
    greatest_year = int(versions[0].split(".", maxsplit=1)[0])
    unsupported_year = greatest_year - 2
    # 3 regular versions
    regular = []  # type: List[str]
    max_regular = 3
    # 2 LTS versions, one of them could be in regular
    lts = []  # type: List[str]
    max_lts = 2
    # The rest are unsupported
    unsupported = []  # type: List[str]
    table = [
        "| Version | Supported |",
        "|:-|:-|",
    ]
    for version in versions:
        year = int(version.split(".")[0])
        month = int(version.split(".")[1])
        version = f"{year}.{month}"
        to_append = ""
        if version in regular or version in lts:
            continue
        if len(regular) < max_regular:
            regular.append(version)
            to_append = f"| {version} | ✔️ |"
        if len(lts) < max_lts and month in [3, 8]:
            lts.append(version)
            to_append = f"| {version} | ✔️ |"
        if to_append:
            if len(regular) == max_regular and len(lts) == max_lts:
                # if we reached the max number of supported versions, the rest
                # are unsopported, so year.* will be used
                unsupported_year = min(greatest_year - 1, year)
            table.append(to_append)
            continue
        if year <= unsupported_year:
            # The whole year is unsopported
            version = f"{year}.*"
        if not version in unsupported:
            unsupported.append(version)
            table.append(f"| {version} | ❌ |")
    return "\n".join(table) + "\n"