The executive chef is trying to bring some competitive spirit into his kitchen. He wants to split the chefs into two teams based on their age - he'll form the young and the old team. To make it fair, he will split them evenly or give the young team one person advantage when there is an odd number of chefs. Ages of all employees are unique. The executive chef also rated all chefs according to their cooking skills. Rating of a team is equal to the sum of ratings of its members. The chefs have developed a habit of coming to work late. The executive chef wants to keep the teams as fair as possible at all times and is therefore forced to change the teams each time one of the chefs comes to work in the morning. He needs your help with this task.

------ Input ------ 

The first line contains the number of chefs N. The following N lines describe the chefs in order as they come to work. Each chef is described by two integers, his or her age A_{i} and rating R_{i}.

------ Output ------ 

Every time a new chef joins the kitchen, output the absolute difference between team ratings.

------ Constraints ------ 

$1 ≤ N ≤ 10^{5}$
$1 ≤ A_{i} ≤ 10^{9}$
$1 ≤ R_{i} ≤ 1000$

----- Sample Input 1 ------ 
5
2 3
1 7
5 5
3 1
8 15
----- Sample Output 1 ------ 
3
4
5
4
9

Difficulty: MEDIUM

Solutions:
import heapq
n = int(input())
young = []
youngrate = 0
old = []
oldrate = 0
age_to_rating = {}
for i in range(n):
	(age, rating) = map(int, input().split())
	age_to_rating[age] = rating
	if len(young) == 0 or age < -young[0]:
		heapq.heappush(young, -age)
		youngrate += rating
	else:
		heapq.heappush(old, age)
		oldrate += rating
	if len(young) > len(old) + 1:
		oldestyoung = -1 * heapq.heappop(young)
		youngrate -= age_to_rating[oldestyoung]
		heapq.heappush(old, oldestyoung)
		oldrate += age_to_rating[oldestyoung]
	elif len(old) > len(young):
		youngestold = heapq.heappop(old)
		oldrate -= age_to_rating[youngestold]
		heapq.heappush(young, -youngestold)
		youngrate += age_to_rating[youngestold]
	print(abs(oldrate - youngrate))