Назвемо стовбуром кореневого дерева набір вершин, які знаходяться на відстані не більше від кореня. Відстань визначається як сума довжин ребер на шляху між вершинами.
Уявіть нескінченне кореневе дерево, де кожен вузол має рівно синів, і для кожного вузла відстань до його -го лівого сина дорівнює d_i. Ваше завдання — обчислити розмір стовбура такого дерева.
Оскільки відповідь може бути дуже великою, знайдіть її за модулем 10^9 + 7.
У першому рядку через пробіл записані два цілі числа і x~(1 \le n \le 10^5, 0 \le x \le 10^9) — кількість нащадків кожної вершини та максимальна відстань від кореня, в межах якої потрібно враховувати вершини.
У наступному рядку через пробіл записані цілих чисел d_i~(1 \le d_i \le 100) — довжина ребра, що з'єднує кожну вершину з її -м сином.
Виведіть одне число — кількість вершин у дереві, які знаходяться на відстані від кореня не більше .

Малюнок до прикладу (жовтим позначені вершини, відстань до яких не більше трьох)
Приклад 1