C. Граница
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Космонавт Наташа полетела исследовать Марс. Она знала, что марсиане — очень бедные инопланетяне. Чтобы обеспечить лучшую жизнь для своих граждан, их император решил брать налог с каждого туриста, посетившего планету. Наташа — жительница Земли, поэтому, чтобы попасть на территорию Марса, ей пришлось заплатить налог.

На Марсе существуют $$$n$$$ номиналов банкнот: $$$i$$$-й номинал равен $$$a_i$$$. У Наташи есть бесконечное количество купюр каждого номинала.

На руке каждого марсианина находится $$$k$$$ пальцев, поэтому на Марсе используется система счисления с основанием $$$k$$$. Кроме того, марсиане считают цифру $$$d$$$ (в системе счисления с основанием $$$k$$$) божественной. В связи с этим, если последняя цифра в записи суммы налога Наташи в системе счисления с основанием $$$k$$$ будет $$$d$$$, марсиане будут счастливы. К сожалению, Наташа пока не знает божественную цифру марсиан.

Определите, при каких значениях $$$d$$$ Наташа сможет сделать марсиан счастливыми.

Наташа может использовать только свои банкноты. Марсиане ей не дают сдачу.

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

Первая строка содержит два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n \le 100\,000$$$, $$$2 \le k \le 100\,000$$$) — количество номиналов банкнот и основание системы счисления на Марсе.

Вторая строка содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \le a_i \le 10^9$$$) — номиналы банкнот на Марсе.

Все числа даны в десятичной системе счисления.

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

В первой строке выведите количество значений $$$d$$$, при которых Наташа сможет сделать марсиан счастливыми.

Во второй строке выведите все эти значения в возрастающем порядке.

Все числа выводите в десятичной системе счисления.

Примеры
Входные данные
2 8
12 20
Выходные данные
2
0 4
Входные данные
3 10
10 20 30
Выходные данные
1
0
Примечание

Рассмотрим первый тестовый пример. В нём используется восьмеричная система счисления.

Возьмём одну купюру номиналом $$$12$$$. В восьмеричной системе счисления это $$$14_8$$$. Последняя цифра — $$$4_8$$$.

Возьмём одну купюру номиналом $$$12$$$ и одну купюру номиналом $$$20$$$. Сумма — $$$32$$$. В восьмеричной системе счисления это $$$40_8$$$. Последняя цифра — $$$0_8$$$.

Возьмём две купюры номиналом $$$20$$$. Сумма — $$$40$$$. В восьмеричной системе счисления это $$$50_8$$$. Последняя цифра — $$$0_8$$$.

Никакую другую цифру, кроме $$$0_8$$$ и $$$4_8$$$, получить нельзя. Цифры $$$0_8$$$ и $$$4_8$$$ можно также получить и другими способами.

Во втором тестовом примере используется десятичная система счисления. Номиналы всех купюр заканчиваются нулём, поэтому Наташа может дать марсианам только сумму, десятичная запись которой тоже заканчивается нулём.