#include #define rep(i,a,b) for(int i=a;i=b;i--) using namespace std; typedef long long ll; typedef pair P; int main(){ const ll INF = 1e18; int N; ll D; cin >> N >> D; ll dp[N+1][2]; rep(i,0,N+1) rep(j,0,2) dp[i][j] = 0; ll salary[N+1][2]; rep(i,1,N+1) cin >> salary[i][0] >> salary[i][1]; dp[1][0] = salary[1][0]; dp[1][1] = salary[1][1] - D; rep(i,2,N+1) rep(j,0,2){ if(j==0) dp[i][j] = max(dp[i-1][1]+salary[i][0]-D, dp[i-1][0]+salary[i][0]); else dp[i][j] = max(dp[i-1][0]+salary[i][1]-D, dp[i-1][1]+salary[i][1]); } cout << max(dp[N][0], dp[N][1]) << endl; }