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

Сегодня у Адилбека тест по теории вероятности. К сожалению, к моменту, когда Адилбек пришел в университет, уже сформировалась огромная очередь из других желающих сдать этот же тест. Адилбек оценил, что он сможет приступить к тесту только через $$$T$$$ секунд.

К счастью, Адилбек может провести время ожидания более интересным образом, чем повторение скучных теорем и формул. У него на телефоне есть приложение с $$$n$$$ японскими кроссвордами. Адилбек собрался решать их по одному, в том же порядке, в котором они перечислены в приложении, не пропуская ни одного кроссворда. Для каждого кроссворда известно время $$$t_i$$$, за которое его в среднем может решить эксперт по кроссвордам (время также задано в секундах).

Адилбек — настоящий эксперт по японским кроссвордам, но, к сожалению, ему иногда не везет с выбором стратегии решения. Поэтому решение $$$i$$$-го кроссворда будет занимать у него либо $$$t_i$$$ секунд, либо $$$t_i + 1$$$ секунд равновероятно (с вероятностью $$$\frac{1}{2}$$$ он решает кроссворд ровно за $$$t_i$$$ секунд, а с вероятностью $$$\frac{1}{2}$$$ он потратит дополнительную секунду на решение кроссворда). Все эти события независимы.

Ровно через $$$T$$$ секунд (либо после решения последнего кроссворда, если он успевает их все решить меньше чем за $$$T$$$ секунд) Адилбек закрывает приложение (если он заканчивает какой-то кроссворд в последний момент, то данный кроссворд считается решенным; иначе Адилбек бросает кроссворд не решенным до конца). Он считает, что будет очень интересно и по теме посчитать $$$E$$$ — математическое ожидание количества кроссвордов, которые он успеет полностью решить. Можете ли вы посчитать данное матожидание?

Напомним, что матожидание дискретной случайной величины — это вероятностно-взвешенное среднее всех ее возможных значений. В данной задаче это означает, что матожидание количества решенных кроссвордов может быть посчитано как как $$$E = \sum \limits_{i = 0}^{n} i p_i$$$, где $$$p_i$$$ — вероятность того, что Адилбек решит ровно $$$i$$$ кроссвордов.

Мы можем представить $$$E$$$ как рациональную дробь $$$\frac{P}{Q}$$$ с $$$Q > 0$$$. В качестве ответа выведите $$$P \cdot Q^{-1} \bmod (10^9 + 7)$$$.

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

В первой строке заданы два целых числа $$$n$$$ и $$$T$$$ ($$$1 \le n \le 2 \cdot 10^5$$$, $$$1 \le T \le 2 \cdot 10^{14}$$$) — количество кроссвордов и время, которое есть у Адилбека.

Во второй строке заданы $$$n$$$ целых чисел $$$t_1, t_2, \dots, t_n$$$ ($$$1 \le t_i \le 10^9$$$), где $$$t_i$$$ — это время, необходимое эксперту, чтобы решить $$$i$$$-й кроссворд.

Заметим, что Адилбек решает кроссворды в порядке, заданном во входных данных, не пропуская ни одного из них.

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

Выведите одно число — матожидание количества кроссвордов, решенных Адилбеком за $$$T$$$ секунд, в форме $$$P \cdot Q^{-1} \bmod (10^9 + 7)$$$.

Примеры
Входные данные
3 5
2 2 2
Выходные данные
750000007
Входные данные
3 5
2 1 2
Выходные данные
125000003
Примечание

Ответ для первого примера равен $$$\frac{14}{8}$$$.

Ответ для второго примера равен $$$\frac{17}{8}$$$.