#include <bits/stdc++.h>
using namespace std;
using ll=long long;
ll mod=1000003;
ll INF=1LL<<60;

int main() {
  int N,D;
  cin >> N >> D;
  vector<vector<ll>> dp(N+1,vector<ll>(2));
  dp[0][1]=-D;
  for(int i=0;i<N;i++){
	  int T,K;
	  cin >> T >> K;
	  dp[i+1][0]=max(dp[i][0]+T,dp[i][1]+T-D);
	  dp[i+1][1]=max(dp[i][1]+K,dp[i][0]+K-D);
  }
  cout << max(dp[N][0],dp[N][1]) << endl;
}