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

Дано целое неотрицательное число k и n неотрицательных целых чисел a1, a2, ..., an. Записывая некоторые из этих чисел друг за другом в произвольном порядке и, возможно, используя какие-то из них несколько раз (а какие-то вообще не используя), требуется составить кратчайшее (наименьшее по количеству цифр) число, делящееся на k, или определить, что это невозможно.

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

В первой строке содержится два целых числа n (1 ≤ n ≤ 1 000 000) и k (1 ≤ k ≤ 1000) — количество чисел и требуемый делитель соответственно.

Во второй строке содержится n целых чисел a1, a2, ..., an (0 ≤ ai ≤ 109).

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

Если ответ существует, в первой строке выведите «YES» (без кавычек), а во второй строке — искомое кратчайшее число без ведущих нулей. В случае если ответа не существует, в единственной строке выходных данных выведите «NO» (без кавычек).

Примеры
Входные данные
2 3
123 1
Выходные данные
YES
123
Входные данные
1 10
1
Выходные данные
NO
Входные данные
3 4
1 2 3
Выходные данные
YES
12
Входные данные
3 777
12 23 345
Выходные данные
YES
121212