#include <iostream>
#include <vector>
#include <math.h>

using namespace std;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int N, Q;
    cin >> N >> Q;
    vector<int> d;
    vector<int> p;
    vector<int> h;
    bool pNule = true;
    bool dNule = true;
    int a, b;
    int turns=0;
    for(int i=0; i<N; i++){
        cin >> a >> b;
        d.push_back(a);
        p.push_back(b);
    }
    for(int i=0; i<Q; i++)
    {
        cin >> a;
        h.push_back(a);
    }
    for(int i=0; i<N; i++){
        if(p[i]!=0)
            pNule=false;
        if(d[i]!=0)
            dNule=false;
    }
    if(pNule){
        for(int i=0; i<Q; i++){
            for(int j=0; j<N; j++)
            {
                h[i]-= d[j];
                if(h[i]>0 && j<N-1)
                    turns++;
                if(h[i]<=0)
                {
                    turns++;
                    break;
                }

                if(j==N-1 && h[i]>0)
                    turns=-1;

            }
            cout << turns << endl;
            turns=0;
        }
    }

    
    return 0;
}