#include <stdio.h>

typedef struct{
    unsigned long long d, p;
}dan;

int main (){
	unsigned long long N, Q, k[100], days, stanje, i, j, t; dan A[1000];
	scanf("%llu %llu", &N, &Q); // N - max dani, Q - broj pitanja

	for(i=0; i<N; i++){
		scanf("%llu %llu",&A[i].d, &A[i].p);
	}

	for(j=0; j<Q; j++){
		scanf("%llu", &k[j]);
	}

	for(i=0; i<Q; i++){ // krece se po k - pitanjima
		stanje=days=t=0;    // inicijalizacija
		if(t==N) stanje-=k[i];
		else for(j=1; j<=k[i]; j++){    // ide kroz dane na vremenskoj liniji
                if(j==A[t].d){    // ako je danas dan na koji je tata uzeo plazmu
                        stanje+=A[t].p;   // na stanju ima vise plazme
                        t++;}   // i ceka se naredni dan
                if(stanje>0){   // ako ima plazme na stanju
                        stanje--;   // oduzima se jedna od stanja
                        days++;    // i broji se dan da je cerka uzela plazmu
                }

		}
		printf("%llu\n", days);
	}
}