N,P,K=map(int,input().split()) L1=[] L2=[] dp=[[0]*(K+1) for i in range(N+1)] dp[0][0]=P for i in range(N): t,b=map(int,input().split()) if t==1: for j in range(K+1): if j10**18: print(-1) exit() dp[i+1][j]=max(dp[i][j],dp[i+1][j]) else: for j in range(K+1): if j10**18: print(-1) exit() dp[i+1][j]=max(dp[i][j],dp[i+1][j]) print(dp[N][K])