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

#define MAX_STVARI 300000

int64_t dani_range[MAX_STVARI];
int64_t missed_dani[MAX_STVARI];
int64_t dani[MAX_STVARI];
int64_t resenja[MAX_STVARI];
int n, q;

template<typename T>
void print_arr(T arr, int n) {
    for(int i = 0; i < n; i++) {
        cout << arr[i] << " ";
    }
    cout << '\n';
}

int main() {
    ///////////
    // INPUT //
    ///////////
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cin >> n >> q;
    for(int i = 0; i < n; i++) {
        int64_t plazma;
        cin >> dani[i] >> plazma;
        if(i == 0) {
            dani_range[i] = plazma;
            missed_dani[i] = dani[i] - 1;
        } else {
            int64_t kul_broj = dani_range[i - 1] - (dani[i] - dani[i - 1]);
            int64_t ekstra = max(kul_broj, static_cast<int64_t>(0));
            dani_range[i] = plazma + ekstra;
            missed_dani[i] = missed_dani[i-1];
            if(kul_broj < 0) {
                missed_dani[i] += abs(kul_broj);
            }
        }
        //cout << prefiks_kolicina[i] << endl;
    }

    ///////////
    // RACUN //
    ///////////
    for(int i = 0; i < q; i++) {
        int64_t pitanje;
        cin >> pitanje;
        int dani_indeks = lower_bound(dani, dani + n, pitanje) - dani;
        if(pitanje < dani[dani_indeks])
            dani_indeks--;
        if(dani_indeks >= n)
            dani_indeks = n-1;

        int64_t max_dani = dani[dani_indeks] + dani_range[dani_indeks] - 1;

        int64_t resenje = pitanje;
        resenje -= missed_dani[dani_indeks];
        resenje -= max(static_cast<int64_t>(0), pitanje - max_dani);
        resenja[i] = max(static_cast<int64_t>(0), resenje);

        //cout << "indeks: " << dani_indeks << ", dan: " << dani[dani_indeks] << ", kol: " << dani_range[dani_indeks] << endl;
    }
    /*cout << "////////////////////////\n";
    print_arr(dani, n);
    print_arr(dani_range, n);
    print_arr(missed_dani, n);
    print_arr(resenja, q);
    cout << "////////////////////////\n";*/

    ////////////
    // OUTPUT //
    ////////////
    for(int i = 0; i < q; i++) {
        cout << resenja[i] << '\n';
    }

    return 0;
}