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

Исследователи все еще пытаются составить карту желтых уровней Закулисья. Для этого они постепенно устанавливают сигнальные маячки, каждый из которых располагается в некоторой части уровня.

Представим уровень как двухмерную плоскость. Обозначим координаты $$$i$$$-го маячка как позицию в точке $$$(x_i, y_i)$$$. Как оказалось, они автоматически устанавливают соединения друг с другом. Два маячка $$$i$$$ и $$$j$$$ устанавливают соединение друг с другом тогда и только тогда, когда $$$|x_i-x_j| = |y_i-y_j| = k$$$. Между каждой парой маячков существует ровно один сигнал, который изображается отрезком между соответствующими точками.

Если два отрезка разных направлений пересекаются, возникают помехи. Помехой называется неупорядоченная пара отрезков разных направлений, которые пересекаются в точке, лежащей строго внутри каждого из них. Пересечения в концах отрезков не учитываются.

Помогите исследователю определить общее количество помех между всеми соединениями.

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

В первой строке даны два целых числа $$$n$$$ и $$$k$$$ — количество маячков и параметр соединения ($$$1 \le n \le 2 \cdot 10^5$$$, $$$1 \le k \le 10^9$$$).

В следующих $$$n$$$ строках даны два целых числа $$$x_i$$$ и $$$y_i$$$ — координаты $$$i$$$-го маячка ($$$-10^9 \le x_i, y_i \le 10^9$$$).

Гарантируется, что все точки попарно различны.

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

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

Пример
Входные данные
6 2
0 0
2 2
0 2
2 0
4 2
4 0
Выходные данные
2
Примечание

В примере пересекаются следующие пары отрезков:

  • $$$(0,0)$$$–$$$(2,2)$$$ и $$$(0,2)$$$–$$$(2,0)$$$;
  • $$$(2,0)$$$–$$$(4,2)$$$ и $$$(2,2)$$$–$$$(4,0)$$$.