Дорожня система Лемурії досить складна. Деякі її міста з'єднані односторонніми або двосторонніми дорогами. Проте лемури добре доглядають свої дороги, і їхні дорожні карти завжди актуальні.
Турист Г. щойно прибув до міста у Лемурії рейсом Penguin Air. Зворотний рейс вирушає з міста . У Г. є список найпопулярніших пам'яток Лемурії, і він планує відвідати їх усі. Також він має найновішу версію дорожньої карти, тобто для кожного міста у нього є список міст, у які можна потрапити безпосередньо з . Ваше завдання — допомогти туристу спланувати маршрут по Лемурії, який починається у , проходить через усі міста з пам'ятками (у будь-якому порядку) й закінчується у .
У першому рядку задано чотири цілі числа: кількість міст у Лемурії (1 \leq N \leq 2000), кількість міст із пам'ятками (0 \leq K \leq N), а також номери міст і (усі міста нумеруються починаючи з ).
У другому рядку розташовано різних чисел — номери міст із пам'ятками.
Останні рядків описують дорожню карту. Кожен рядок містить символів: якщо -ий символ у (p+2)-му рядку вхідних даних дорівнює , то з міста є пряма дорога до міста ; якщо — прямої дороги немає. Доріг із міста у саме себе не існує.
Якщо жоден маршрут не задовольняє умови, виведіть одним рядком: NO. Інакше виведіть YES у першому рядку, в другому рядку — кількість міст (M \leq N^2) у маршруті, а далі у наступному(их) рядку(ах) — чисел — міста у маршруті. Перше місто має бути , останнє — . Для будь-яких двох послідовних міст у маршруті має існувати пряма дорога від першого до другого.
Приклад 1