#include <iostream>
using namespace std;

int main(){
	int64_t n, d;
	cin >> n >> d;
	int64_t t[n], k[n];
	for(int i = 0; i < n; i++) cin >> t[i] >> k[i];
	int64_t dp[n + 1][2];
	dp[1][0] = t[0];
	dp[1][1] = k[0] - d;
	for(int i = 1; i < n; i++){
		dp[i + 1][0] = max(dp[i][0] + t[i], dp[i][1] + t[i] - d);
		dp[i + 1][1] = max(dp[i][0] + k[i] - d, dp[i][1] + k[i]);
	}
	cout << max(dp[n][0], dp[n][1]) << endl;
}