import java.util.Scanner;
import java.util.Map;
import java.util.HashMap;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static String result = ""; 
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLong()) { // 注意 while 处理多个 case
            Long a = in.nextLong();
            StringBuffer sb = new StringBuffer();
            toEnglish(a, sb, 0);
            System.out.println(result);
        }
    }
    public static void toEnglish(long input, StringBuffer sb, int count) {
        if (input == 0) {
            result = sb.toString();
            return;
        }
        Map<Integer, String> map = new HashMap<>();
        map.put(0, "thousand");
        map.put(1, "million");
        map.put(2, "billion");
        Map<Integer, String> numberMap = new HashMap<>();
        numberMap.put(1, "one"); numberMap.put(2, "two"); numberMap.put(3, "three");
        numberMap.put(4, "four"); numberMap.put(5, "five"); numberMap.put(6, "six");
        numberMap.put(7, "seven"); numberMap.put(8, "eight"); numberMap.put(9, "nine");
        numberMap.put(10, "ten"); numberMap.put(11, "eleven"); numberMap.put(12, "twelve");
        numberMap.put(13, "thirteen"); numberMap.put(14, "fourteen"); numberMap.put(15, "fifteen");
        numberMap.put(16, "sixteen"); numberMap.put(17, "seventeen"); numberMap.put(18, "eighteen");
        numberMap.put(19, "nineteen"); numberMap.put(20, "twenty"); numberMap.put(30, "thirty");
        numberMap.put(40, "forty"); numberMap.put(50, "fifty"); numberMap.put(60, "sixty");
        numberMap.put(70, "seventy"); numberMap.put(80, "eighty"); numberMap.put(90, "ninety");
        long next = input / 1000;
        long current = input % 1000;
        int gewei = (int)current % 10;
        int shiwei = (int)(current / 10) % 10;
        int baiwei = (int)(current / 100) % 10;
        StringBuffer tempBuffer = new StringBuffer();
        if (input >= 1000) {
            tempBuffer.append(" " + map.get(count));
        }
        if (baiwei != 0 && shiwei == 0 && gewei == 0) {
            if (next != 0) {
                tempBuffer.append(" " + numberMap.get(baiwei)).append(" hundred");
            } else {
                tempBuffer.append(numberMap.get(baiwei)).append(" hundred");
            }
            toEnglish(next, tempBuffer.append(sb), count + 1);
            return;
        }
        if (baiwei != 0) {
            if (next != 0) {
                tempBuffer.append(" " + numberMap.get(baiwei)).append(" hundred").append(" and");
            } else {
                tempBuffer.append(numberMap.get(baiwei)).append(" hundred").append(" and");
            }
        }
        if (shiwei != 0 && gewei == 0) {
            if (next == 0 && baiwei == 0) {
               tempBuffer.append(numberMap.get(shiwei * 10)); 
            } else {
                tempBuffer.append(" " + numberMap.get(shiwei * 10)); 
            }
            toEnglish(next, tempBuffer.append(sb), count + 1);
            return;
        }
        if (shiwei != 0 && shiwei != 1) {
            if ((next == 0 && baiwei == 0)) {
                tempBuffer.append(numberMap.get(shiwei * 10));
            } else {
                tempBuffer.append(" " + numberMap.get(shiwei * 10));
            }
        }
        if (shiwei == 1) {
            if (next != 0) {
                tempBuffer.append(" " + numberMap.get(10 + gewei));
            } else {
                tempBuffer.append(numberMap.get(10 + gewei));
            }
            
        } else if (gewei != 0) {
            if (next == 0 && shiwei == 0) {
                tempBuffer.append(numberMap.get(gewei));
            } else {
                tempBuffer.append(" " + numberMap.get(gewei));
            }
        }
        toEnglish(next, tempBuffer.append(sb), count + 1);
    }
}