import sys def solve(): input = sys.stdin.readline N, W = map(int, input().split()) X = list(map(int, input().split())) Y = list(map(int, input().split())) maxX = max(X) if X else 0 val = [0] * (maxX + 1) for x, y in zip(X, Y): val[x] += y S = [0] * (maxX + 1) for g in range(1, maxX + 1): total = 0 for m in range(g, maxX + 1, g): total += val[m] S[g] = total ans = 0 for g in range(W, maxX + 1): if S[g] > ans: ans = S[g] print(ans) if __name__ == "__main__": solve()