#include <bits/stdc++.h>
using namespace std;
long long N,Q,d[300050],p[300050],k[300050],dan[300050],prenos,x,start,J,nula;
/// 4 3 1 7 2 3 8 1 12 3
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    cin >>N >> Q;
    for (int i=1;i<=N;i++){
        cin >> d[i] >> p[i];
    }
    for (int i=1;i<=N;i++){
        dan[i]=min(prenos+1,d[i]-d[i-1])+dan[i-1];
        x=prenos+1-(d[i]-d[i-1]);
        if (x>0){
            prenos=x+p[i]-1;
        }
        else{
            prenos=p[i]-1;
        }
    }
    start=0;
    d[N+1]=1e18;
    d[N+1]+=999;
    for (int i=1;i<=Q;i++){
        cin >> k[i];
        if (k[i]>d[N]){ ///posle poslednjeg uzimanja plazme
            cout << dan[N] +  min(k[i]-d[N], prenos) << endl;
        }
        else{
            for (int j=start;j<=N;j++){    ///izmedju 0 i N-tog dana
                if (d[j]<=k[i] && d[j+1]>k[i] ){
                    J=j;
                    start=j-1;
                    break;
                }
            }
            cout << dan[J]+min(k[i]-d[J], max(p[J]-1, nula ) ) <<endl;
        }
    }


    return 0;
}