N = int(raw_input()) tuples = [] for _ in xrange(N): v, t = map(int, raw_input().split()) tuples.append((t, v)) dp = [0] * 10001 tuples.sort() for tup in tuples: for n in xrange(tup[0] - 1, -1, -1): v = min(dp[n] + tup[1], 10000) dp[v] = max(dp[v], dp[n] + tup[1]); print max(dp)