Два рядки#5250

Два рядки

1 секунда
64 мегабайти
Дуже складна

Вам дано два рядки, кожен з яких має довжину не більше . Рядок називається хорошим, якщо при достатній кількості повторень він містить обидва дані рядки як підрядки. Наприклад, розглянемо рядки ababa та bab. Рядок ab є хорошим, оскільки його подвійне повторення дає ababab, який містить обидва ці рядки як підрядки.

Ваше завдання — знайти найкоротший хороший рядок для двох заданих рядків.

Вхідні дані

Вхід складається з двох рядків. Обидва рядки складаються з символів з ASCII-кодами від до . Довжина кожного рядка не перевищує .

Вихідні дані

Виведіть найкоротший хороший рядок. Якщо існує декілька таких рядків однакової мінімальної довжини, можна вивести будь-який з них.

Приклади

Приклад 1

Loading
Loading