n = int(input()) scores = {} orders = [] for _ in range(n): name, score = input().split(' ') orders.append([name, int(score)]) if name not in scores: scores[name] = [] scores[name].append(int(score)) totals = [] for k,v in scores.items(): totals.append(sum(v)) winval = max(totals) winners = [k for k,v in scores.items() if sum(v) == winval] if len(winners) < 1: print(winner[0]) else: for idx, i in enumerate(orders): if i[0] not in winners: del orders[idx] for idx, i in enumerate(orders): if i[0] not in winners: del orders[idx] print(orders) winner = '' durations = {} for i in orders: if i[0] not in durations: durations[i[0]] = 0 durations[i[0]] += i[1] if durations[i[0]] == winval: winner = i[0] break print(winner)