#include <bits/stdc++.h>
#define f first
#define s second
using namespace std ;
pair<long long,long long> data[1001] ;
bool cmp(pair<long long ,long long> a ,pair<long long ,long long> b )
{
if (a.f < b.f) {
return true;
}
return a.s > b.s;
}
int main()
{
long long s,n ;
bool flag = 1 ;
cin >> s >> n ;
for(int i =0 ; i < n ; i++)
{
cin >> data[i].f >> data[i].s ;
}
sort(data , data+n ,cmp) ;
for(int i = 0 ; i < n ; i++)
{
if(data[i].f < s)
{
s = s+ data[i].s ;
}
else
{
flag = 0 ;
cout <<"NO" <<endl ;
break ;
}
}
if(flag)
cout <<"YES"<<endl ;
return 0 ;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgZiBmaXJzdCAKI2RlZmluZSBzIHNlY29uZAp1c2luZyBuYW1lc3BhY2Ugc3RkIDsKCnBhaXI8bG9uZyBsb25nLGxvbmcgbG9uZz4gZGF0YVsxMDAxXSA7Cgpib29sIGNtcChwYWlyPGxvbmcgbG9uZyAsbG9uZyBsb25nPiBhICxwYWlyPGxvbmcgbG9uZyAsbG9uZyBsb25nPiBiICkKewoJaWYgKGEuZiA8IGIuZikgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICAgIHJldHVybiBhLnMgPiBiLnM7Cn0KCgppbnQgbWFpbigpCnsKCWxvbmcgbG9uZyBzLG4gOwoJYm9vbCBmbGFnID0gMSA7CgljaW4gPj4gcyA+PiBuIDsKICAgIGZvcihpbnQgaSA9MCA7IGkgPCBuIDsgaSsrKQogICAgewogICAgCWNpbiA+PiBkYXRhW2ldLmYgPj4gZGF0YVtpXS5zIDsKCX0KCXNvcnQoZGF0YSAsIGRhdGErbiAsY21wKSA7Cglmb3IoaW50IGkgPSAwIDsgaSA8IG4gOyBpKyspCgl7CgkJaWYoZGF0YVtpXS5mIDwgcykKCQl7CgkJCXMgPSBzKyBkYXRhW2ldLnMgOwoJCX0KCQllbHNlCgkJewoJCSBmbGFnID0gMCA7CgkJICBjb3V0IDw8Ik5PIiA8PGVuZGwgOwoJICAgICBicmVhayA7CgkJfQoJfQoJaWYoZmxhZykKCWNvdXQgPDwiWUVTIjw8ZW5kbCA7CgkKCQoJCiAgICByZXR1cm4gMCA7Cn0=