#include <bits/stdc++.h>
using namespace std;
int t[25], b[25];
void greedy_aux(set<int> s, int n, int now, int sum, bool &flag) {
  if (now != -1) {
    if (sum + t[now] > b[now]) return;
    sum += t[now];
    s.erase(now);
    if (!s.size()) {
      flag = true;
      return;
    }
  }
  for (int i = 0; i < (n); i++) {
    greedy_aux(s, n, i, sum, flag);
    if (flag) return;
  }
}
bool greedy(int n) {
  set<int> s;
  for (int i = 0; i < (n); i++) s.insert(i);
  bool flag = false;
  greedy_aux(s, n, -1, 0, flag);
  return flag;
}
int main() {
  for (;;) {
    int n;
    cin >> n;
    if (!n) break;
    for (int i = 0; i < (n); i++) cin >> t[i] >> b[i];
    printf("%s\n", greedy(n) ? "Yes" : "No");
  }
}
