시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 512 MB0000.000%

문제

Недавно Васе продиктовали номер телефона. Он записал его, разделив числа дефисами, но потом начал сомневаться, не ошибся ли он в записи номера. Ведь бывают различные телефонные номера, которые произносятся одинаково. Например, все четыре номера <<3000-100-1>>, <<3000-101>>, <<3100-1>>, <<3101>> читаются как <<три тысячи сто один>>. Теперь он хочет выяснить, какие номера произносятся также, как и записанный им номер.

Вася считает, что при произношении телефонного номера не употребляются числа, состоящие более чем из девяти цифр. Напомним, как произносятся числа от $1$ до $999\,999\,999$.

Если число больше или равно $1\,000\,000$, то сначала произносится число миллионов в мужском роде, затем слово <<миллион>>, <<миллиона>> или <<миллионов>>, по следующим правилам. Если число миллионов, взятое по модулю 100, не равно 11 и дает остаток 1 по модулю 10, то произносится слово <<миллион>>. Если число миллионов, взятое по модулю 100, не равно 12, 13 или 14 и дает остаток 2, 3 или 4 по модулю 10, то произносится слово <<миллиона>>. Иначе произносится слово <<миллионов>>.

Если число по модулю  $1\,000\,000$ больше или равно $1\,000$, то затем произносится число тысяч в женском роде, затем слово <<тысяча>>, <<тысячи>> или <<тысяч>>, по следующим правилам. Если число тысяч, взятое по модулю 100, не равно 11 и дает остаток 1 по модулю 10, то произносится слово <<тысяча>>. Если число тысяч, взятое по модулю 100, не равно 12, 13 или 14 и дает остаток 2, 3 или 4 по модулю 10, то произносится слово <<тысячи>>. Иначе произносится слово <<тысяч>>.

Затем, если число по модулю 1\,000 отлично от нуля, в мужском роде произносится число единиц.

Например, число $978\,121\,014$ произносится как <<девятьсот семьдесят восемь миллионов сто двадцать одна тысяча четырнадцать>>, а число $1\,000\,142$ как <<один миллион сто сорок два>>. Заметим, что перед словом <<миллион>> нельзя опускать слово <<один>>, перед словом <<тысяча>> слово <<одна>>, а числа от $11$ до $19$ произносятся одним словом.

Помогите Васе найти все телефонные номера, которые произносятся так же, как тот, который он записал.

입력

На входе единственная строка, содержащая номер записанного Васей телефона. Номер телефона --- это целые числа, разделенные символом <<->> (ASCII код 39). Каждое число в записи положительно, содержит не более девяти цифр и не содержит ведущих нулей. Гарантируется, что в записанном Васей номере встречается не больше 50 цифр.

출력

В первой строке выведите количество телефонных номеров, которые читаются так же, как и записанный Васей номер. В следующих строках выведите эти номера телефонов. Каждый номер должен находиться в отдельной строке. Каждый номер должен состоять из чисел от 1 до $999\,999\,999$, разделенных дефисами.

Порядок телефонов в ответе не важен. Гарантируется, что количество номеров в ответе не превышает $100\,000$. Учтите, что в ответе могут встречаться и номера, составленные более чем из 50 цифр.

예제 입력 1

3000-101

예제 출력 1

4
3000-100-1
3000-101
3100-1
3101