<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def eta_letters(seconds):
 """Convert seconds remaining into human readable strings. From https://github.com/Robpol86/etaprogress/blob/ad934d4/etaprogress/components/eta_conversions.py. Positional arguments: seconds -- integer/float indicating seconds remaining. """

    final_days, final_hours, final_minutes, final_seconds = 0, 0, 0, seconds
    if final_seconds >= 86400:
        final_days = int(final_seconds / 86400.0)
        final_seconds -= final_days * 86400
    if final_seconds >= 3600:
        final_hours = int(final_seconds / 3600.0)
        final_seconds -= final_hours * 3600
    if final_seconds >= 60:
        final_minutes = int(final_seconds / 60.0)
        final_seconds -= final_minutes * 60
    final_seconds = int(math.ceil(final_seconds))

    if final_days:
        template = '{1:d}d {2:d}h {3:02d}m {4:02d}s'
    elif final_hours:
        template = '{2:d}h {3:02d}m {4:02d}s'
    elif final_minutes:
        template = '{3:02d}m {4:02d}s'
    else:
        template = '{4:02d}s'

    return template.format(final_days, final_hours, final_minutes, final_seconds)