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

int main()
{
    int n, q ;
    cin >> n >> q ;
    long long d[n] ;
    long long p[n] ;
    long long pojela[n] ;
    for(int i=0 ; i<n ; i++){
        cin >> d[i] >> p[i] ;
        if(i>0){
            p[i]=max(p[i]-(d[i]-d[i-1])+p[i-1],p[i]-1) ;
            pojela[i]=min(pojela[i-1]+d[i]-d[i-1],pojela[i-1]+p[i-1]) ;
        }
        else{
            pojela[i]=1 ;

        }
    }
    long long  k;
    for(int i=0 ; i<q ; i++){
        cin >> k ;
        int ind ;
        if(k<d[n-1]){
            ind=upper_bound(d,d+n,k)-d;
            if(ind>0){
                ind-- ;
                long long res=min(pojela[ind]+k-d[ind],pojela[ind]+p[ind]) ;
                cout << res << endl ;
            }
            else{
                cout << 0 << endl ;
            }
        }
        else{
            ind=n-1 ;
            long long res=min(pojela[ind]+k-d[ind],pojela[ind]+p[ind]) ;
            cout << res << endl ;

        }

    }
    return 0;
}