#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; }