Криптарифм
ограничение по времени на тест
1.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Однажды Данияр, проходя мимо младшей сестры Мирры, увидел в её тетрадке запись ОДИН+ОДИН=МНОГО. Данияр подумал, что его сестра пытается научиться считать, но оказалось, что Мирра давно это умеет и уже решает более сложные задачки, а то, что увидел Данияр — простой криптарифм.

Криптарифм — это математический ребус, в котором зашифрован пример на выполнение одного из арифметических действий(в этой задаче — только сложение). При этом одинаковые цифры шифруются одной и той же буквой, а разным цифрам соответствуют различные буквы. Никакое число не должно начинаться с нуля.

Данияру понравилась такая задачка, и он захотел придумать ещё несколько таких же для своих друзей. Он хочет, чтобы слова в ребусе имели смысл, поэтому сначала придумывает слова, а потом пытается решить ребус. Решать ребусы Данияру надоело после первой же неудачной попытки, поэтому он просит вас решить все криптарифмы, которые он придумал, если это возможно (друзья Данияра живут по всему миру, поэтому криптарифмы он придумывает на английском)

Входные данные

Далее под $$$|s|$$$ подразумевается длина строки s.

Первая строка входных данных содержит строку $$$A$$$ ($$$1 \leq |A| \leq 8$$$) из строчных букв английского алфавита — первое слагаемое ребуса.

Вторая строка входных данных содержит строку $$$B$$$ ($$$1 \leq |B| \leq 8$$$) из строчных букв английского алфавита — второе слагаемое ребуса.

Третья строка входных данных содержит строку $$$C$$$ ($$$1 \leq |C| \leq 9$$$) из строчных букв английского алфавита — сумма ребуса.

Гарантируется, что в криптарифме используется не более 10 различных букв

Выходные данные

Если ребус имеет решение, выведите три целых числа, которые могли быть скрыты за $$$A$$$, $$$B$$$ и $$$C$$$ соответственно, иначе выведите -1. Первая буква каждой из строк A, B и C обязана представлять цифру от 1 до 9 (ноль может использоваться только в остальных позициях)

Если решений несколько, выведите любое.

Система оценки

Решения, верно работающие при $$$|A| = 1$$$ и $$$|B| = 1$$$, будут получать не менее 40 баллов.

Решения, верно работающие при $$$|A| \leq 3$$$ и $$$|B| \leq 3$$$, будут получать не менее 70 баллов.

Примеры

Входные данные

    one
    one
    lot

Выходные данные

    423
    423
    846

Входные данные

    send
    more
    money

Выходные данные

    9567
    1085
    10652