#include<bits/stdc++.h> using namespace std; #define int long long #define rep(i,n) for(int i=0;i<(n);i++) #define pb push_back #define all(v) (v).begin(),(v).end() #define fi first #define se second typedef vector<int>vint; typedef pair<int,int>pint; typedef vector<pint>vpint; template<typename A,typename B>inline void chmin(A &a,B b){if(a>b)a=b;} template<typename A,typename B>inline void chmax(A &a,B b){if(a<b)a=b;} const int INF=1001001001001001001ll; int N,D; int T[111],K[111]; int dp[222][2]; signed main(){ cin>>N>>D; rep(i,N)cin>>T[i]>>K[i]; fill_n(*dp,222*2,-INF); dp[0][0]=0; rep(i,N){ chmax(dp[i+1][0],dp[i][0]+T[i]); chmax(dp[i+1][0],dp[i][1]+T[i]-D); chmax(dp[i+1][1],dp[i][0]+K[i]-D); chmax(dp[i+1][1],dp[i][1]+K[i]); } cout<<max(dp[N][0],dp[N][1])<<endl; return 0; }