#include <iostream>
#include <set>
#include <algorithm>
using namespace std;

int main(){
  
  int n;
  while(true){
    cin >> n;
    if(n == 0 )return 0;
    int sima[n];
    int hasi[n];
    
   
    for(int i = 0;i < n;i++){
      cin >> sima[i];
      cin >> hasi[i];//財宝
      //cin >> hasi[n];//橋の重さ
      
    }
    /*  for(int i = 0;i < n;i++){
      cout << sima[i]<< " " << hasi[i]<< endl;
      }*/
    set<int> array;
    for(int i = 0;i < n;i++){
      array.insert(hasi[i]);
    }
    //sort(array.begin(),array.end());
    
    int sum = 0;
    int flag = 0;
    set<int>::iterator it = array.begin();
    while(it != array.end() ){
      for(int j= 0;j < n;j++){
	if(*it== hasi[j]){
	  //cout << hasi[j] << "aaa"<< endl;
	  sum = sum + sima[j];
	  if(sum <= hasi[j]){}
	  else {
	    // cout << *it << " " << j << " " << hasi[j] << " " << sum << endl;
	    flag =1;
	    cout << "No" << endl;
	    break;
	  }
	}
	
      }
      it++;
      if(flag == 1)break;
    }
    if(flag != 1){
      cout << "Yes" << endl;
    }
    
  }
  
  
  return 0;
}