#include <bits/stdc++.h>
using namespace std;
struct Data {
  int w, l, c;
  bool operator<(const Data& rhs) const {
    if (c != rhs.c)
      return c < rhs.c;
    else
      return w < rhs.w;
  }
};
Data data[25];
bool used[25];
int main() {
  int n;
  while (scanf("%d", &n), n) {
    memset(used, false, sizeof(used));
    for (int i = 0; i < (int)(n); ++i) {
      scanf("%d%d", &data[i].w, &data[i].l);
      data[i].c = data[i].l - data[i].w;
    }
    sort(data, data + n);
    int i, sum = 0;
    for (i = 0; i < n; ++i) {
      int j;
      for (j = 0; j < n; ++j) {
        if (!used[j] && data[j].c >= sum) {
          used[j] = true;
          break;
        }
      }
      if (j == n) break;
      sum += data[j].w;
    }
    if (i == n) {
      puts("Yes");
    } else {
      puts("No");
    }
  }
}
