#include <bits/stdc++.h>
using namespace std;
#define ll           long long
#define all(v)       (v).begin() , (v).end()
#define vi           vector <ll>
#define vii          vector <pair<ll,ll>>
#define ii           pair<ll,ll>
#define sz(v)	     ((int)((v).size()))
#define Forr(i,s)       for(auto &i:s)
#define lp(i,a,b)    for(int i=a;i<b;i++)
#define pb           push_back
#define pf           push_front
#define F            first
#define S            second
#define endl         "\n"
#define IOS          ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
const double PI = 3.14159265358979323846;
const ll inf=1e9+7,MOD=1e9+7,MAX=1e3+2;


int main() {
#ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
#endif
    IOS
    ll n,m,t;
    cin>>n>>m>>t;
    ll a[m],b[m],cur=0,ok=1,mx=n;
    lp(i,0,m){
        cin>>a[i]>>b[i];
        n-=a[i]-cur;
        ok&=n>0;
        n+=b[i]-a[i];
        n=min(n,mx);
        cur=b[i];
    }
    n-=t-cur;
    ok&=n>0;
    cout<<(ok?"Yes":"No");
}

#include <bits/stdc++.h>
using namespace std;

typedef long long int ll;
ll MOD = 1000000007;
ll INFL = 1ll << 60;
ll INF = 1 << 28;

// ====================================================================

int main() {
  int n, m, t;
  cin >> n >> m >> t;

  vector<int> a(m), b(m);
  for (int i = 0; i < m; i++) cin >> a[i] >> b[i];

  int bat = n, time = 0;
  bool can = true;
  for (int i = 0; i < m; i++) {
    bat -= a[i] - time;
    // cout << "now battery ... " << bat << endl;
    if (bat <= 0) {
      cout << "No" << endl;
      return 0;
    }
    bat = min(n, bat + b[i] - a[i]);
    time = b[i];
  }

  // last bun
  bat -= t - time;
  // cout << "now battery ... " << bat << endl;
  if (bat <= 0) {
    cout << "No" << endl;
  } else {
    cout << "Yes" << endl;
  }
}
