Ежегодное соревнование ICPC (Intergalactic Collegiate Programming Contest) вновь готово принять своих гостей (на этот раз, к счастью, без переносов). На соревнование в том числе приехала небезызвестная команда Вселенской Школы Экспертов, которая, согласно правилам этого года, состоит ровно из $$$n$$$ участников. Участник команды под номером $$$i$$$ оценивает свою силу решения задач ровно в $$$a_i$$$ единиц.
Решив не нарушать хорошую традицию, вечером за день перед началом основного тура участники команды решили посетить не менее известный бар «DRYga». Поскольку команда довольно опытная, они знают интересную закономерность, которая характерна для них. Изначально $$$i$$$-й участник команды способен решить ровно $$$0$$$ задач на соревновании. После каждого выпитого «особого экстремального шота» силы $$$k$$$ участник команды под номером $$$i$$$ приобретает очень важные знания, что позволяет решить ему на соревновании ровно $$$(x + k) \bmod (a_i + 1)$$$ задач, где $$$x$$$ — количество задач, которые мог решить участник до того как выпил шот, а $$$a \bmod b$$$ — операция взятия остатка от целочисленного деления числа $$$a$$$ на число $$$b$$$. Весь вечер команда заказывает только «особые экстремальные шоты» силы $$$k$$$, участник команды может заказать неограниченное количество шотов.
Поскольку команда намерена выиграть соревнования в этом году, они хотят заказать в баре ровно столько «особых экстремальных шотов» силы $$$k$$$, чтобы каждый участник команды решил ровно $$$a_i$$$ задач. Помогите легендарной команде посчитать какое минимальное суммарное количество шотов в баре необходимо заказать.
Первая строка входных данных содержит два разделенных пробелами натуральных числа $$$n$$$ и $$$k$$$ — количество участников команды и сила «особого экстремального шота».
Вторая строка входных данных содержит $$$n$$$ натуральных чисел $$$a_1, a_2, a_3, \ldots, a_n$$$ — сила решения задач участника под номером $$$i$$$.
$$$$$$ 1 \le n \le 10^5 $$$$$$ $$$$$$ 1 \le k \le 10^5 $$$$$$ $$$$$$ 0 \le a_i \le 10^5 $$$$$$ $$$$$$ \sum{a_i} \le 10^6 $$$$$$
Выведите единственное число — минимальное количество шотов, которое необходимо заказать команде.
Если не существует такого количества шотов, чтобы каждый участник команды решил ровно $$$a_i$$$ задач, выведите $$$-1$$$.
5 51 2 3 5 7
9
5 628 16 4 18 20
-1
В первом примере участникам команды с номерами $$$1$$$, $$$2$$$ и $$$4$$$ необходимо заказать по одному шоту для решения необходимого им количества задач, остальным же участникам команды нужно заказать ровно по три шота для решения необходимого для них количества задач.