#!/usr/bin/python """Replaces strings of numerals with `.` thousands separators with Spanish.""" import re import sys digits = re.compile(r'\d[\d.]*') sep = re.compile(r'[.]') numbers = 'cero uno dos tres cuatro cinco seis siete ocho nueve diez once doce trece catorce quince'.split() tens = 'diez veinte treinta cuarenta cincuenta sesenta setenta ochenta noventa'.split() ten_prefixes = 'dieci veinti'.split() hundreds = {100: 'ciento', 500: 'quinientos', 700: 'setecientos', 900: 'novecientos'} def wordify_number(n): if n < len(numbers): return numbers[n] if n % 10 == 0 and n < 100: return tens[n//10 - 1] t = n // 10 - 1 if t < len(ten_prefixes): return ten_prefixes[t] + wordify_number(n % 10) if n < 100: return wordify_number(n - n % 10) + ' y ' + wordify_number(n % 10) if n > 999: miles = wordify_number(n // 1000) + ' mil' if n > 1999 else 'mil' return miles + (' ' + wordify_number(n % 1000) if n % 1000 else '') if n == 100: return 'cien' lead = hundreds.get(n - n % 100, wordify_number(n // 100) + 'cientos') return lead + (' ' + wordify_number(n % 100) if n % 100 else '') def wordify(digits): return wordify_number(int(sep.sub('', digits.group(0)))) def substnums(s): return digits.sub(wordify, s) if __name__ == '__main__': for line in sys.stdin: print(substnums(line))