E. Два типа заклинаний
ограничение по времени на тест
3.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Поликарп играет в компьютерную игру (да, опять). В этой игре он сражается с монстрами при помощи заклинаний.

Есть два типа заклинаний: огненный шар силы $$$x$$$ наносит $$$x$$$ урона монстру, а молния силы $$$y$$$ наносит $$$y$$$ урона монстру и удваивает урон следующего заклинания. Каждое заклинание может быть использовано только один раз, но Поликарп может применять их в любом порядке.

Например, предположим, что Поликарп знает три заклинания: огненный шар силы $$$5$$$, молнию силы $$$1$$$ и молнию силы $$$8$$$. Всего есть $$$6$$$ способов выбрать порядок заклинаний:

  • первое, второе, третье. В таком случае вы нанесете $$$5 + 1 + 2 \cdot 8 = 22$$$ урона;
  • первое, третье, второе. В таком случае вы нанесете $$$5 + 8 + 2 \cdot 1 = 15$$$ урона;
  • второе, первое, третье. В таком случае вы нанесете $$$1 + 2 \cdot 5 + 8 = 19$$$ урона;
  • второе, третье, первое. В таком случае вы нанесете $$$1 + 2 \cdot 8 + 2 \cdot 5 = 27$$$ урона;
  • третье, первое, второе. В таком случае вы нанесете $$$8 + 2 \cdot 5 + 1 = 19$$$ урона;
  • третье, второе, первое. В таком случае вы нанесете $$$8 + 2 \cdot 1 + 2 \cdot 5 = 20$$$ урона.

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

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

Первая строка содержит целое число $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$) — количество заклинаний в наборе.

Каждая из следующих $$$n$$$ строк содержит два числа $$$tp$$$ и $$$d$$$ ($$$0 \le tp_i \le 1$$$; $$$-10^9 \le d \le 10^9$$$; $$$d_i \neq 0$$$) — описание изменений. Если $$$tp_i$$$ равно $$$0$$$, Поликарп учит (или забывает) огненный шар, иначе он учит (или забывает) молнию.

Если $$$d_i > 0$$$, то Поликарп учит заклинание силы $$$d_i$$$. Иначе, Поликарп забывает заклинание силы $$$-d_i$$$, и гарантируется, что он знал это заклинание до этого.

Гарантируется, что после каждого изменения все силы заклинаний различны (Поликарп не может знать одновременно два заклинания одинаковой силы).

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

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

Пример
Входные данные
6
1 5
0 10
1 -5
0 5
1 11
0 -10
Выходные данные
5
25
10
15
36
21