E2. Медиана на подотрезках (редакция для общего случая)
ограничение по времени на тест
3 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Задана последовательность целых чисел $$$a_1, a_2, \dots, a_n$$$.

Найдите количество таких пар индексов $$$(l, r)$$$ ($$$1 \le l \le r \le n$$$), что медиана последовательности $$$a_l, a_{l+1}, \dots, a_r$$$ равна заданному числу $$$m$$$.

Медианой последовательности называется значение такого элемента, который находится в середине последовательности после её сортировки по неубыванию. Если последовательность имеет чётную длину, то имеется ввиду левый из двух средних элементов.

Например, если последовательность $$$a=[4, 2, 7, 5]$$$, то её медиана равна $$$4$$$, так как после сортировки последовательность примет вид $$$[2, 4, 5, 7]$$$ и левый из двух средних элементов равен $$$4$$$. Медиана последовательности $$$[7, 1, 2, 9, 6]$$$ равна $$$6$$$, так как после сортировки $$$6$$$ будет находится в середине последовательности.

Напишите программу, которая найдет количество пар индексов $$$(l, r)$$$ ($$$1 \le l \le r \le n$$$), что медиана последовательности $$$a_l, a_{l+1}, \dots, a_r$$$ равна заданному числу $$$m$$$.

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

В первой строке записаны целые числа $$$n$$$ и $$$m$$$ ($$$1 \le n,m \le 2\cdot10^5$$$) — длина заданного массива и ожидаемое значение медианы.

Вторая строка содержит последовательность $$$a_1, a_2, \dots, a_n$$$ ($$$1 \le a_i \le 2\cdot10^5$$$).

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

Выведите количество искомых пар индексов.

Примеры
Входные данные
5 4
1 4 5 60 4
Выходные данные
8
Входные данные
3 1
1 1 1
Выходные данные
6
Входные данные
15 2
1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
Выходные данные
97
Примечание

В первом примере искомые пары индексов: $$$(1, 3)$$$, $$$(1, 4)$$$, $$$(1, 5)$$$, $$$(2, 2)$$$, $$$(2, 3)$$$, $$$(2, 5)$$$, $$$(4, 5)$$$ и $$$(5, 5)$$$,