N, M, W = map(int, input().split()) A = sorted(list(map(int, input().split())), reverse=True) B = list(map(int, input().split())) C = list(map(int, input().split())) ans = 0 for i in range(2**M): lst = [] for j in range(M): if (i >> j) & 1: lst.append(j) w = sum(B[i] for i in lst) v = sum(C[i] for i in lst) if W < w: continue j = 0 while j < N and w + A[j] <= W: w += 1 v += A[j] j += 1 ans = max(ans, v) print(ans)