D. Экзамен Славика
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

У Славика очень сложный экзамен, и ему нужна ваша помощь, чтобы его сдать. Вот задача, с которой он столкнулся:

Дана строка $$$s$$$, которая состоит из строчных английских букв и, возможно, нуля или более «?».

Славик должен заменить каждый «?» на строчную английскую букву так, чтобы строка $$$t$$$ стала подпоследовательностью (необязательно непрерывной) строки $$$s$$$.

Выведите любую подходящую строку или скажите, что это невозможно, если не существует строки, которая соответствует условиям.

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

Первая строка содержит одно целое число $$$T$$$ ($$$1 \leq T \leq 10^4$$$) — количество наборов входных данных.

Первая строка каждого набора входных данных содержит одну строку $$$s$$$ ($$$1 \leq |s| \leq 2 \cdot 10^5$$$, и $$$s$$$ состоит только из строчных английских букв и символов «?»)  — исходная строка, которую вы имеете.

Вторая строка каждого набора входных данных содержит одну строку $$$t$$$ ($$$1 \leq |t| \leq |s|$$$, и $$$t$$$ состоит только из строчных английских букв)  — строка, которая должна быть подпоследовательностью строки $$$s$$$.

Сумма $$$|s|$$$ по всем наборам входных данных не превышает $$$2 \cdot 10^5$$$, $$$|x|$$$ обозначает длину строки $$$x$$$.

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

Для каждого набора входных данных, если такой строки не существует, как описано в условии, выведите «NO» (без кавычек).

В противном случае выведите «YES» (без кавычек). Затем выведите одну строку — строку, которая соответствует всем условиям.

Вы можете выводить «YES» и «NO» в любом регистре (например, строки «yEs», «yes», и «Yes» будут признаны положительным ответом).

Если возможно несколько ответов, вы можете вывести любой из них.

Пример
Входные данные
5
?????
xbx
ab??e
abcde
ayy?x
a
ab??e
dac
paiu
mom
Выходные данные
YES
xabax
YES
abcde
YES
ayyyx
NO
NO