#include<iostream>
#include<math.h>
#include<vector>
#include<algorithm>
#include<cstdio>
#include <string>
using namespace std;

int main(){
    int g,m,n,i,a,b,dp[10001];
    while(cin>>m&&m){
        dp[0]=1;
        for(i=1;i<=1000;i++){
            dp[i]=0;
        }
        for(i=0;i<m;i++){
            cin>>a>>b;
            for(int j=1000;j>=0;j--){
                if(dp[j]){
                    for(int k=1;k<=b;k++){
                        dp[j+k*a]+=dp[j];
                    }
                }
            }
        }
        cin>>g;
        for(i=0;i<g;i++){
            cin>>n;
            cout<<dp[n]<<endl;
        }
    }
    return 0;
}
