#include<bits/stdc++.h>
using namespace std;
main(){
  int n,k;
  while(1){
    cin>>n;
    if(n==0)break;
    int num[50];
    int numnum[50];
    int cnt=0;
    int g;
    for(int i=0;i<n;i++){
      cin>>num[i]>>numnum[i];
    }
    cin>>g;
    for(int i=0;i<g;i++){
      int y;
      cin>>y;
      cnt=0;
      queue<int> que;
      que.push(0);
      for(int i=0;i<n;i++){
	int size=que.size();
	for(int j=0;j<size;j++){
	  int now=que.front();
	  que.pop();
	  for(int k=0;k<=numnum[i];k++){
	    if(now+num[i]*k==y){
	      cnt++;
	    }
	    else{
	      que.push(now+num[i]*k);
	    }
	  }
	}
      }
      cout<<cnt<<endl;
    }
  }
}