n, p = map(int, input().split()) h_ls = [int(h) for h in input().split()] memo = [[0, p] for i in range(n)] for i in range(1, n): c0 = memo[i - 1][0] c1 = memo[i - 1][1] cost_0 = max(h_ls[i] - h_ls[i - 1], 0) cost_1 = max(h_ls[i - 1] - h_ls[i], 0) memo[i][0] = min(c0 + cost_0, c0 + p, c1 + p) memo[i][1] = min(c1 + cost_1, c1 + p, c0 + p) print(min(memo[-1]))