#include using namespace std; typedef long long ll; ll N, D; ll T[110], K[110]; ll dp[110][2]; int main() { cin >> N >> D; for (int i = 0; i < N; i++) { cin >> T[i] >> K[i]; } dp[0][1] = -(1LL << 60); for (int i = 0; i < N; i++) { dp[i + 1][0] = max(dp[i][0] + T[i], dp[i][1] + T[i] - D); dp[i + 1][1] = max(dp[i][0] + K[i] - D, dp[i][1] + K[i]); } cout << max(dp[N][0], dp[N][1]) << endl; return 0; }