#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  int nn, r, a, b;
  cin >> nn >> r;
  vector<pair<int, int> > p;
  vector<pair<int, int> > n;
  for (int i = 0; i < nn; i++) {
    cin >> a >> b;
    if (b >= 0) {
      p.push_back({a, b});
    } else {
      n.push_back({a, b});
    }
  }
  sort(p.begin(), p.end());
  sort(n.begin(), n.end(), [](pair<int, int> a, pair<int, int> b) {
    return a.second + a.first > b.first + b.second;
  });
  int psize = p.size();
  int flag = 1;
  for (int i = 0; i < psize; i++) {
    if (p[i].first <= r)
      r += p[i].second;
    else {
      flag = 0;
      break;
    }
  }
  int nsize = n.size();
  for (int i = 0; i < nsize; i++) {
    if (n[i].first <= r)
      r += n[i].second;
    else {
      flag = 0;
      break;
    }
    if (r < 0) {
      flag = 0;
      break;
    }
  }
  if (flag)
    cout << "YES\n";
  else
    cout << "NO\n";
  return 0;
}
