C. Крош и пути
ограничение по времени на тест
4 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

У Кроша есть граф, состоящий из $$$n$$$ вершин. Для любой вершины $$$1 \le i \le n - 2$$$ есть ориентированные ребра $$$(i, i + 1)$$$ и $$$(i, i + 2)$$$, для вершины $$$n - 1$$$ есть ориентированное ребро $$$(n - 1, n)$$$. У каждой вершины есть свое значение - $$$a_i$$$. Крош рассматривает пути из вершины $$$1$$$ в вершину $$$n$$$. Стоимость пути определяется как максимум из значений вершин в этом пути. Помогите Крошу посчитать сумму стоимостей по всем возможным путям из вершины $$$1$$$ в вершину $$$n$$$. Выведите ответ по модулю $$$m$$$, где $$$m$$$ - заданное число(необязательно простое).

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

В первой строке содержатся два числа $$$1 \le n \le 2 * 10^5$$$ и $$$10 \le m \le 10^9$$$ - число вершин и модуль, по которому нужно найти ответ. В следующей строке записано $$$n$$$ целых положительных чисел $$$1 \le a_i \le 10^9$$$ - значения вершин.

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

Выведите ответ по модулю $$$m$$$.

Примеры
Входные данные
4 1000
2 3 5 3
Выходные данные
13
Входные данные
1 1000000000
1000000000
Выходные данные
0
Входные данные
5 583723
1000000000 1000000000 1000000000 1000000000 1000000000
Выходные данные
412505