#include using namespace std; typedef long long LL; const int N = 110; int n, d, b[N], t[N]; LL dp[N][2]; int main() { // freopen("work.in", "r", stdin); // freopen("work.out", "w", stdout); scanf("%d%d", &n, &d); for (int i = 1; i <= n; ++i) scanf("%d%d", &b[i], &t[i]); dp[1][0] = b[1]; dp[1][1] = t[1] - d; for (int i = 2; i <= n; ++i) { dp[i][0] = max(dp[i - 1][0], dp[i - 1][1] - d) + b[i]; dp[i][1] = max(dp[i - 1][1], dp[i - 1][0] - d) + t[i]; } printf("%lld\n", max(dp[n][0], dp[n][1])); return 0; }