Зовсім інше слово
Працювати фрилансером ще ніколи не було так просто: уявіть себе, лежачи в гамаку, попиваючи напій і ліниво переглядаючи чергові запити на роботу. Раптом ви натрапляєте на незвичайне прохання. Я б навіть сказав, дивне. Один письменник шукає... слово. Ні, не звичайне слово, йому потрібне щось особливе. Ви вирішуєте взятися за цю роботу. Зрештою, хто краще за вас розбирається у програмуванні чогось дивного?
Наступного дня ви дізнаєтеся всі подробиці. Запит надійшов від відомого автора, який застряг у написанні свого наступного роману. Кажуть, він так застряг, що останній сезон серіалу за його твором вже вийшов в ефір. Підписавши угоду про нерозголошення, ви дізнаєтеся, що ситуація складніша, ніж здавалося. Насправді книга майже завершена вже кілька років, але автор постійно переписує одну главу, яку ніяк не може зробити правильно. Глава обертається навколо важливого пророцтва, яке задумано як складна гра слів з трьома словами однакової довжини.
Ви знаєте, що перше слово s лексикографічно передує останньому слову t, якщо вони мають однакову кількість символів. Ваш клієнт хоче знайти слово x тієї ж довжини, яке лексикографічно знаходиться строго між s і t і водночас містить першу букву імені обіцяного героя: символ К. Можливо, що такого слова x не існує (що повністю пояснює всі затримки), але... хто знає?
Вхідні дані
Перша стрічка містить кількість тестів z (1 ≤ z ≤ 10^5
). Далі йдуть описи тестів.
Перша стрічка кожного тесту містить одне ціле число n (1 ≤ n ≤ 25 000) - довжину s і t, і строчну букву К. Наступні два рядки містять слова s і t, що складаються з строчних літер англійського алфавіту.
Сума n серед усіх тестів не перевищує 10^5
.
Вихідні дані
Для кожного тесту виведіть один рядок: будь-яке слово x довжини n, що складається з строчних літер англійського алфавіту, яке задовольняє вимогам, або "NO" якщо такого слова не існує.