#include using namespace std; using ll = long long; template bool chmax(T& a, const T& b) { if (a < b) { a = b; return true; } return false; } template bool chmin(T& a, const T& b) { if (a > b) { a = b; return true; } return false; } constexpr ll inf = (1LL << 62); long dp[110][2]; int main() { ll n, d; cin >> n >> d; vector t(n), k(n); for (ll i = 0; i < n; ++i) { cin >> t[i] >> k[i]; } dp[0][0] = 0; dp[0][1] = -d; for (ll i = 0; i < n; ++i) { dp[i + 1][0] = max(dp[i][1] - d + t[i], dp[i][0] + t[i]); dp[i + 1][1] = max(dp[i][0] - d + k[i], dp[i][1] + k[i]); } cout << max(dp[n][0], dp[n][1]) << endl; }