using System;
using System.Linq;
using System.Collections.Generic;


namespace Test1 {


    class island :IComparable{
        public int hasi = 0;
        public int takara = 0;
        public island(int has, int takar) { hasi = has; takara = takar; }
        public int CompareTo(object obj) {
            island isl = (island) obj;
            return takara = isl.takara;
        }
    }

    class ClassMain {


        public static void Main(String[] args) {
            string line;
            while ((line = Console.ReadLine()) != null) {
                //int[] ints = line.Split(' ').Select(int.Parse).ToArray();
                //int n = ints[0];
                int n = int.Parse(line);
                if(n==0){break;}
                List<island> isls = new List<island>();
                for (int i = 0; i < n; i++) {
                    int[] ints = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
                    isls.Add(new island(ints[1],ints[0]));
                }
                isls.Sort();
                int sum = 0;
                bool canpass=true;
                for(int i =0; i<n; i++){
                    sum+=isls.ElementAt(i).takara;
                    if(sum>isls.ElementAt(i).hasi){canpass=false; break;}
                }
                if(canpass){Console.WriteLine("Yes");}
                else{Console.WriteLine("No");}
            
            }
            
        }

        
    }

    

    
}