#include <iostream>
#include <vector>

#define LL long long

int main()
{
    int n, q;
    std::cin >> n >> q;
    
    std::vector<std::pair<LL, LL>> dani(n);
    
    LL prethodniKraj = 0;
    for (int i = 0; i < n; i++)
    {
        LL di, pi;
        std::cin >> di >> pi;
        
        prethodniKraj = std::max(prethodniKraj - di, (LL)0);
        dani[i] = { prethodniKraj + di, prethodniKraj + di + pi };
        prethodniKraj = di + pi;
    }
    
    for (int i = 0; i < q; i++)
    {
        int q;
        std::cin >> q;
        
        LL b = 0;
        
        int j = 0;
        while (j < n && dani[j].first <= q)
        {
            if (dani[j].second > q)
            {
                b += q - dani[j].first + 1;
                break;
            }
            
            b += dani[j].second - dani[j].first;
            j++;
        }
        
        std::cout << b << std::endl;
    }
    
    return 0;
}