/* Author : Mychecksdead */
#include <bits/stdc++.h>
using namespace std;
typedef long long int ll;
typedef unsigned long long int ull;
#define MOD (1000000000+7)
#define MOD1 (998244353)
#define PI 3.1415926535
#define pb push_back
#define for0(i, n) for(ll i = 0; i < n; i++)
#define for1(i, n) for(ll i = 1; i <= n; i++)
#define test int T; cin >> T;
#define mid (l+r)/2
const int N = 1e5;

int n, q;
ll arr[N], el, k;
set<pair<ll,ll>> s;
void solve(){  
    cin >> n >> q;
    for0(i, n) cin >> arr[i];
    for(int i = 0; i < n; i++){
        s.insert({arr[i] - i - 1, arr[i]});
    }
    while(q--){
        cin >> k;
        auto it = s.upper_bound({k, -1e9});
        if(it == s.begin()){
            cout << k << '\n';
        }else{
            it--;
            pair<ll, ll> p = (*it);
            cout << p.second + k - p.first << '\n';
        }
        
    }
}




int main(){
    cin.tie(0); ios::sync_with_stdio(0);
    // test;
    int T = 1;
    while(T--){
        solve();
    }
    return 0;
}
#define _GLIBCXX_DEBUG
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i, n) for (ll i = 0; i < (ll)(n); i++)

int main() {
    ll N,M,T; cin>>N>>M>>T;
    ll n = N, l=0;
    rep(i, M){
        ll A,B; cin>>A>>B;
        n = max(n-(A - l), (ll)0);
        if(n <= 0){
            cout << "No" << endl;
            return 0;
        }
        n = min(n+(B-A), N);
        l = B;
    }

    cout << (n-(T-l) <= 0 ? "No" : "Yes") << endl;
}