Задача №115245. Квадратики

Рассмотрим бесконечную клетчатую плоскость. Будем называть бесконечное множество квадратов размера \(2 \times 2\) покрытием , если каждая клетка плоскости покрыта ровно одним квадратом и они покрывают все клетки плоскости.

Назовем множество квадратов хорошим , если его можно дополнить до покрытия .

У вас есть изначально пустое множество квадратов \(S\). Далее идут \(n\) запросов добавления и удаления квадратов \((x_i, y_i)\), где пара чисел \((x_i, y_i)\) описывает квадрат, который покрывает клетки \((x_i, y_i)\), \((x_i + 1, y_i)\), \((x_i, y_i+1)\) и \((x_i+1, y_i+1)\).

После каждого запроса вам требуется вывести единственное число — размер наибольшего хорошего подмножества множества \(S\).

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

В первой строке располагается единственное число \(n\) (\(1 \le n \le 200\,000\)) — количество запросов.

Следующие \(n\) строк содержат по два целых числа \(x_i\), \(y_i\) (\(1 \le x_i, y_i \le 10^9\)). Если на момент \(i\)-го запроса в \(S\) содержался квадрат, задаваемый парой \((x_i, y_i)\), то он удаляется из множества, иначе — добавляется.

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

Выведите \(n\) строк, в \(i\)-й строке выведите размер наибольшего хорошего подмножества \(S\) после исполнения первых \(i\) запросов.

Примеры
Входные данные
5
1 1
2 2
3 3
4 4
1 1
Выходные данные
1
1
2
2
2
Сдать: для сдачи задач необходимо войти в систему