Агент Сміт передає секретну інформацію до секретного центру, яка складається з одного строго додатного цілого числа. Для кодування числа він замінює кожну цифру відповідним словом і об'єднує слова. Наприклад, може бути закодовано як . Агент Сміт знає чотири мови (1-шу, 2-гу, 3-тю та 4-ту). У цих мовах цифри від до записуються наступним чином (усі літери — це заголовні латинські літери з ASCII-кодами в діапазоні –):
Після кодування Сміт додає до коду певний "шум" — додаткові заголовні латинські літери. Можна додати будь-які літери (включно з тими, що вже використовувалися у коді) у будь-якій кількості й у будь-яке місце коду.
Напишіть програму, яка читає такий код і знаходить найбільше можливе число, яке могло бути закодовано даним рядком, згідно з двома різними припущеннями:
Ми не знаємо, якою мовою користувався Сміт, але вона була одна (з указаного списку) для всього коду;
Сміт міг використовувати різні мови (з указаного списку) для різних цифр або одну й ту ж для всіх цифр.
Ваша програма має зчитувати всі рядки вхідних даних і обробляти їх окремо. Кожен рядок містить не більше ніж 10^5 заголовних латинських літер, що складають код. Загальний обсяг вхідних даних менший за МБ.
Для кожного вхідного рядка виведіть два цілі числа, розділені одним пробілом — найбільші числа відповідно до обох припущень, зазначених вище.
Гарантується, що кожен код був побудований з коректного додатного (ненульового) числа. Тому обидва результати завжди будуть додатними. Виводьте їх без початкових нулів.
Приклад 1