#include <bits/stdc++.h>
using namespace std;
const int MAX = 25;
int data[MAX + 1];
int tre[MAX + 1];
int in;
bool solve(int sum, int rev, int come, int now) {
  if (rev == in && sum <= data[now]) return true;
  for (int i = 1; i <= in; i++)
    if (!(come & (1 << i)) && (sum <= data[now] || !now))
      if (solve(sum + tre[i], rev + 1, come + (1 << i), i)) return true;
  return false;
}
int main() {
  while (cin >> in && in) {
    for (int i = 1; i <= in; i++) cin >> tre[i] >> data[i];
    if (solve(0, 0, 0, 0))
      cout << "Yes" << endl;
    else
      cout << "No" << endl;
  }
  return 0;
}
