N, M, W = map(int, input().split()) A = list(map(int, input().split())) B = list(map(int, input().split())) C = list(map(int, input().split())) A.sort(reverse = True) Asum = [0] * (N + 1) for i in range(N): Asum[i + 1] = Asum[i] + A[i] ans = 0 for bit in range(1 << M): Bsum, Csum = 0, 0 for i in range(M): if bit >> i & 1: Bsum += B[i] Csum += C[i] if Bsum > W: continue Csum += Asum[min(N, W - Bsum)] ans = max(ans, Csum) print(ans)