def METHOD_NAME(duration: float) -> str:
    """
    Turn number of seconds into human readable string
    """
    seconds: int = int(round(duration))
    minutes: int
    minutes, seconds = divmod(seconds, 60)
    hours: int
    hours, minutes = divmod(minutes, 60)
    days: float
    days, hours = divmod(hours, 24)
    years: float
    years, days = divmod(days, 365.242199)
    syears: str = str(years)
    sseconds: str = str(seconds).rjust(2, "0")
    sminutes: str = str(minutes).rjust(2, "0")
    shours: str = str(hours).rjust(2, "0")
    sduration: list[str] = []
    if years > 0:
        sduration.append("{} year{} ".format(syears, "s" * (years != 1)))
    else:
        if days > 0:
            sduration.append("{} day{} ".format(days, "s" * (days != 1)))
        if hours > 0:
            sduration.append(f"{shours}:")
        if minutes >= 0:
            sduration.append(f"{sminutes}:")
        if seconds >= 0:
            sduration.append(f"{sseconds}")
    return "".join(sduration)