#include <iostream>
#include <vector>
#include <algorithm>
#include <queue>

using namespace std;


class island{
public:
	int jewel;
	int limit;
	bool operator<(island const &il)const{
		return il.limit>this->limit;
	}

};

int main(){

	int n;
	while(cin>>n&&n!=0){
		vector<island> vi;
		for(int i = 0; i < n; i++){
			island il;
			cin >> il.jewel >> il.limit;
			vi.push_back(il);
		}
		sort(vi.begin(),vi.end());
		int have=0;
		bool f = true;
		for(int i = 0; i < n; i++){
			have+=vi[i].jewel;
			if(have > vi[i].limit){
				f=false;
				break;
			}
		}
		if(f){
			cout << "Yes" << endl;
		}
		else
			cout << "No" << endl;
	}

	return 0;
}