single_digit = [' ', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
ten_digit = ['twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety']
all_digit = [' ', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'ten', 'eleven', 'twelve',
             'thirteen', 'fourteen', 'fifteen', 'sixteen', 'seventeen', 'eighteen', 'nineteen']
# 将所有小于一百的数字添加到 all_digit中
for j in ten_digit:
    for i in single_digit:
        a1 = j + ' ' + i
        all_digit.append(a1.strip())


def hundred_number3(a_number):  #**根据题意,每三个数字为一组 xx hundred (and) fifteen six million xx hundred (and)
  fifteen six thousand xx hundred (and) fifteen six  例如 3-6位数:a_thousand + ' thousand ' + a_hundred 
  6位数以上 a_million + ' million ' + a_thousand + ' thousand ' + a_hundred**
    a = int(a_number)
    if a >= 100:
        b = a // 100  #整除取百位
        c = a % 100  # 取余得 十位各位
        if c:  # 处理 整百的情况
            return all_digit[b] + ' hundred ' + 'and ' + all_digit[c]
        else:
            return all_digit[b] + ' hundred'
    else:  # 小于一百 直接对应素组下标对应英文
        return all_digit[a]


while True:
    # key_world = ['million', 'thousand', 'hundred']
    try:
        b_number = input()
        if len(b_number) <= 3:
            a_hundred = hundred_number3(b_number)
            print(a_hundred)
        elif len(b_number) <= 6:
            a_thousand = hundred_number3(b_number[0:-3])
            a_hundred = hundred_number3(b_number[-3:])
            print(a_thousand + ' thousand ' + a_hundred)
        else:
            a_million = hundred_number3(b_number[0:-6])
            a_thousand = hundred_number3(b_number[-6:-3])
            a_hundred = hundred_number3(b_number[-3:])
            print(a_million + ' million ' + a_thousand + ' thousand ' + a_hundred)

    except:
        break