R=range J=lambda:map(int,input().split()) N,P,K=J() D=[P]+[0]*K for i in R(N): T,B=J() for k in R(K,0,-1):D[k]=max(D[k],D[k-1]+[B,D[k-1]][T-1]) print([D[K],-1][D[K]>10**18])