#include <stdio.h>

typedef struct {
	int gold;
	int wight;
} ISLAND;

int island_count;

int main(void)
{
	ISLAND island[25];
	int i;
	int j;
	int have;
	
	while (1){
		scanf("%d", &island_count);
		
		if (island_count == 0){
			break;
		}
		for (i = 0; i < island_count; i++){
			scanf("%d%d", &island[i].gold, &island[i].wight);
		}
		
		for (i = 0; i < island_count; i++){
			for (j = i + 1; j < island_count; j++){
				if (island[i].wight > island[j].wight){
					ISLAND temp;
					temp = island[i];
					island[i] = island[j];
					island[j] = temp;
				}
			}
		}
		
		have = 0;
		for (i = 0; i < island_count; i++){
			have += island[i].gold;
			if (have > island[i].wight){
				break;
			}
		}
		
		if (i == island_count){
			printf("Yes\n");
		}
		else {
			puts("No");
		}
	}
	
	return (0);
}