#include using namespace std; int main() { int N, D; cin >> N >> D; vector> TK(N, vector(2)); for(int i = 0; i < N; i++) { for(int j = 0; j < 2; j++) { cin >> TK.at(i).at(j); } } vector dpt(N + 1, 0); vector dpk(N + 1, 0); for(int i = 1; i <= N; i++) { dpt.at(i) = max(dpt.at(i - 1), dpk.at(i - 1) - D) + TK.at(i - 1).at(0); dpk.at(i) = max(dpt.at(i - 1) - D, dpk.at(i - 1)) + TK.at(i - 1).at(1); } cout << max(dpt.at(N), dpk.at(N)) << endl; }