def main(): N, D = map(int, input().split()) income = [tuple(map(int, input().split())) for _ in range(N)] dp = [[] for _ in range(2)] dp[0].append(income[0][0]) dp[1].append(income[0][1] - D) for day in range(1, N): dp[0].append(income[day][0] + max(dp[0][day-1], dp[1][day-1] - D)) # tokyo dp[1].append(income[day][1] + max(dp[1][day-1] - D, dp[0][day-1] - D)) # kyoto print(max(dp[0][-1], dp[1][-1])) main()