Алиса написала программу, и теперь всячески работает над улучшением её читаемости. Один из способов улучшить читаемость — давать переменным подходящие имена, поэтому Алиса хочет переименовать часть переменных в своей программе. В её среде разработке есть команда под названием «масштабный рефакторинг», которая позволяет менять сразу имена многим переменным. Для этого нужно выбрать две строки \(s\) и \(t\), после чего для всех переменных выполняется следующий алгоритм: если название переменной содержит \(s\) как подстроку, то первое (и только первое) вхождение \(s\) заменяется на \(t\), а если не содержит \(s\), то оно остаётся прежним.
Дан список переменных, для каждой из которых известно её исходное название и название, на которое Алиса хочет его заменить. Известно, что у каждой переменной длины этих двух названий совпадают (это связано с тем, что выравнивание блоков может «поехать», если длины названий переменных изменятся). Требуется произвести переименование всех переменных за ровно один вызов команды масштабного рефакторинга, или сказать, что это невозможно сделать.
Выходные данные
Если произвести переименование всех переменных за один вызов команды «масштабный рефакторинг» невозможно, выведите «NO» (без кавычек).
Иначе на первой строке выведите «YES» (без кавычек), а на следующих строках \(s\) и \(t\) (\(1 \le |s|, |t| \le 5000\)), которые необходимо использовать для замены. Строки \(s\) и \(t\) должны состоять только из строчных букв латинского алфавита.
Если существует несколько способов провести «масштабный рефакторинг», то можно воспользоваться любым из них.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
1 topforces codecoder
|
YES
topforces
codecoder
|
|
2
|
3 bab cac cdc bdb cdc cdc
|
YES
a
d
|
|
3
|
2 you shal not pass
|
NO
|