n,v,c=map(int,input().split()) dp=[0]*(v+1) for i in range(n): a,b=map(int,input().split()) dp2=[-1<<60]*(v+1) dp3=[-1<<60]*(v+1) for j in range(v+1): dp3[j]=max(dp3[j],dp2[j],dp[j]) if j+a<=v: dp2[j+a]=max(dp2[j+a],dp[j]+b+c,dp2[j]+b) dp=dp3 print(max(dp))