#include #define rep(i, l, r) for (int i = (l); i < (r); i++) using namespace std; typedef long long ll; int main() { ll N, D; cin >> N >> D; vector P(N), Q(N); rep(i, 0, N) cin >> P[i] >> Q[i]; ll ans = -1e18; rep(i, 0, N) { rep(j, 0, N) { if (i == j) continue; ll x = - P[i] + Q[i] - P[j] + Q[j]; if (x >= 0) { ans = max(ans, min({0LL, - P[i], - P[i] + Q[i] - P[j]})); } else { if (D % 2) { ll y = x * (D / 2 - 1) - P[i] + Q[i]; ans = max(ans, min({0LL, y - P[j], y - P[j] + Q[j] - P[i]})); } else { ll y = x * (D / 2 - 1); ans = max(ans, min({0LL, y - P[i], y - P[i] + Q[i] - P[j]})); } } } } cout << ans << endl; }