import java.util.Scanner;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringJoiner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    private static final String[] units = {"thousand", "million", "billion"};
    private static final String[] units2 = {"", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen", "twenty"};
    private static final String[] units4 = {"", "", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety"};

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String line = br.readLine();
        // 拼接逗号
        int[] s = new int[(line.length() + 2) / 3];
        // 012,345,674,346
        int j = s.length * 3 - line.length();
        for (int i = 0; i < s.length; i++) {
            s[i] = Integer.parseInt(line.substring(Math.max((i * 3 - j), 0),
                                                   (i + 1) * 3 - j));
        }
        for (int i = 0; i < s.length; i++) {
            // 获取逗号隔开的数字
            int number = s[i];
            // 计算百位上的数字
            int a = number / 100;
            // 计算十位和个位的数字
            int b = number % 100;
            if (a > 0) {
                System.out.print(units2[a] + " hundred ");
                // 拼接百位上的数字
                if (b > 0) {
                    System.out.print("and ");
                }
            }
            if (b >= 20) {
                System.out.print(units4[b / 10]);
                if (b % 10 > 0) {
                    System.out.print(" " + units2[b % 10]);
                }
            } else {
                System.out.print(units2[b]);
            }
            if (s.length - 1 > i) {
                System.out.print(" " + units[s.length - 2 - i] + " ");
            }

        }

    }

}