N, H = map(int, input().split()) A = list(map(int, input().split())) B = list(map(int, input().split())) ret = 0 suma = 0 sumb0 = 0 sumb1 = 0 l = 0 for r in range(N): # [l, r] suma += A[r] sumb0 += B[r] sumb1 += B[r] * r while True: # B[l] * 1 + B[l + 1] * 2 + ... + B[r] * (r - l + 1) s = sumb1 - sumb0 * (l - 1) if s <= H: break else: suma -= A[l] sumb0 -= B[l] sumb1 -= B[l] * l l += 1 ret = max(ret, suma) print(ret)