#include <stdio.h>
int main(void){
  int n,s,i,j,f;
  struct data{
    int c,m;
  }d[25],t;
  while(1){
    scanf("%d",&n);
    if(!n)
      break;
    for(i=0;i<n;i++)
      scanf("%d %d",&d[i].c,&d[i].m);
    for(i=0;i<n-1;i++){
      for(j=n-1;j>i;j--){
	if(d[j-1].m>d[j].m){
	  t=d[j-1];
	  d[j-1]=d[j];
	  d[j]=t;
	}
      }
    }
    s=0;
    f=1;
    for(i=0;i<n;i++){
      s+=d[i].c;
      if(s>d[i].m){
	f=0;
	break;
      }
    }
    if(f)
      puts("Yes");
    else
      puts("No");
  }
  return 0;
}