while n = gets.to_i
    break if n == 0
    l = []
    n.times {
        a, b = gets.split(" ").map(&:to_i)
        l << [a, b]
    }
    l.sort_by!{|a| a[1]}
    sum = 0
    flg = false
    l.each {|v|
        sum += v[0]
        flg |= sum > v[1]
    }
    puts flg ? "No" : "Yes"
end

