#include <bits/stdc++.h>
int main() {
  std::ios::sync_with_stdio(false);
  std::cin.tie(nullptr);
  int n, m;
  std::cin >> n >> m;
  std::vector<int> dp(m + 1, 1e9);
  std::vector<std::pair<int, int>> p(n);
  for (auto &[x, s] : p) {
    std::cin >> x >> s;
  }
  sort(p.begin(), p.end());
  dp[0] = 0;
  for (auto &[x, s] : p) {
    for (int len = 0; len < m; len++)
      dp[std::min(m, x + len)] =
          std::min(dp[std::min(m, x + len)],
                   dp[std::max(0, x - len - 1)] + std::max(0, len - s));
    for (int j = m; j > 0; j--) dp[j - 1] = std::min(dp[j - 1], dp[j]);
  }
  std::cout << dp[m] << '\n';
  return 0;
}
