MAX = 10 ** 18 n,p,k = map(int, input().split()) a = [list(map(int, input().split())) for i in range(n)] ans = p for BIT in range(2 ** n): bit = bin(BIT)[2:].zfill(n) if bit.count("1") != k: continue cnt = p for i in range(n): if bit[i] == "1": if a[i][0] == 1: cnt += a[i][1] else: cnt *= 2 if cnt > MAX: print(-1) exit() ans = max(ans, cnt) print(ans)