public String numberToWords(int num) {
        if (num < 0) return "Negative " + numberToWords(-num);
        if (num == 0) return "Zero";
        String result = "";
        int i = 0;
        while (num > 0) {
            String words = hundredToWords(num % 1000);
            if (!words.isEmpty()) {
                result = words + bigs[i] + " " + result;
            }
            ++i;
            num /= 1000;
        }
        return result.trim();
    }