N,D = map(int,input().split()) dp = [[0 for _ in range(2)] for _ in range(N)] t,k = map(int,input().split()) dp[0][0],dp[0][1] = t,k-D for i in range(1,N): T,K = map(int,input().split()) dp[i][0] = max(dp[i-1][1] + T-D, dp[i-1][0] + T) dp[i][1] = max(dp[i-1][1] + K, dp[i-1][0] + K-D) print(max(dp[-1]))