def chmax(DP,i,v): if DP[i] < v: DP[i] = v def chmin(DP,i,v): if DP[i] > v: DP[i] = v INF = 10**18 + 1 N, P, K = map(int, input().split()) dp = [[-1] * (K + 1) for _ in range(N + 1)] dp[0][0] = P for i in range(N): t, b = map(int, input().split()) for j in range(K + 1): val = dp[i][j] if val == -1: continue # 不採用 chmax(dp[i + 1], j, val) # 採用 if j + 1 <= K: if t == 1: score = val + b else: score = val * 2 if score >= INF: score = INF chmax(dp[i + 1], j + 1, score) ans = dp[-1][-1] if ans == INF: ans = -1 print(ans)