- #include <iostream> 
- #include <cstdio> 
- #include <cstring> 
- #define ll long long 
- using namespace std; 
- const int maxn = 100000; 
- ll c[5],q,d[5],v,dp[maxn+1]; 
- void solve() 
- { 
- 	for (int i=1; i<=4; i++) 
- 		cin >> c[i]; 
- 	cin >> q; 
- 	memset(dp,0,sizeof(dp)); 
- 	dp[0]=1; 
- 	for (int i=1; i<=4; i++) 
- 		for (int j=c[i]; j<=maxn; j++) 
- 		{ 
- 			//cout << i*j << '\n'; 
- 			dp[j]+=dp[j-c[i]]; 
- 		} 
- 	//cout << dp[c[1]*2] << '\n'; 
- 	//cout << "Done\n"; 
- 	for (int i=1; i<=q; i++) 
- 	{ 
- 		for (int j=1; j<=4; j++) 
- 			cin >> d[j]; 
- 		cin >> v; 
- 		ll res=0; 
- 		for (int j=0; j<16; j++) 
- 		{ 
- 			int dem=0; 
- 			int dv=v; 
- 			int jj=j; 
- 			int vt=0; 
- 			while (jj!=0) 
- 			{ 
- 				vt++; 
- 				dem+=jj%2; 
- 				if (jj%2==1)  
- 					{ 
- 						dv-=(d[vt]+1)*c[vt]; 
- 						//cout << vt << ' '; 
- 					} 
- 				jj/=2; 
- 			} 
- 			//cout << dv  << ' '; 
- 			if (dv>=0) 
- 			{ 
- 				if (dem%2==0) res+=dp[dv]; 
- 				else res-=dp[dv];  
- 			} 
- 		} 
- 		cout << res << '\n'; 
- 	} 
- } 
- int main() 
- {  
- 	ios_base::sync_with_stdio(0); 
- 	//freopen("11259.INP","r",stdin); 
- 	int t; 
- 	cin >> t; 
- 	for (int i=1; i<=t; i++) 
- 	{ 
- 		//cout << i << '\n'; 
- 		solve(); 
- 	} 
- 	return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8Y3N0cmluZz4KI2RlZmluZSBsbCBsb25nIGxvbmcKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKY29uc3QgaW50IG1heG4gPSAxMDAwMDA7CmxsIGNbNV0scSxkWzVdLHYsZHBbbWF4bisxXTsKdm9pZCBzb2x2ZSgpCnsKCWZvciAoaW50IGk9MTsgaTw9NDsgaSsrKQoJCWNpbiA+PiBjW2ldOwoJY2luID4+IHE7CgltZW1zZXQoZHAsMCxzaXplb2YoZHApKTsKCWRwWzBdPTE7Cglmb3IgKGludCBpPTE7IGk8PTQ7IGkrKykKCQlmb3IgKGludCBqPWNbaV07IGo8PW1heG47IGorKykKCQl7CgkJCS8vY291dCA8PCBpKmogPDwgJ1xuJzsKCQkJZHBbal0rPWRwW2otY1tpXV07CgkJfQoJLy9jb3V0IDw8IGRwW2NbMV0qMl0gPDwgJ1xuJzsKCS8vY291dCA8PCAiRG9uZVxuIjsKCWZvciAoaW50IGk9MTsgaTw9cTsgaSsrKQoJewoJCWZvciAoaW50IGo9MTsgajw9NDsgaisrKQoJCQljaW4gPj4gZFtqXTsKCQljaW4gPj4gdjsKCQlsbCByZXM9MDsKCQlmb3IgKGludCBqPTA7IGo8MTY7IGorKykKCQl7CgkJCWludCBkZW09MDsKCQkJaW50IGR2PXY7CgkJCWludCBqaj1qOwoJCQlpbnQgdnQ9MDsKCQkJd2hpbGUgKGpqIT0wKQoJCQl7CgkJCQl2dCsrOwoJCQkJZGVtKz1qaiUyOwoJCQkJaWYgKGpqJTI9PTEpIAoJCQkJCXsKCQkJCQkJZHYtPShkW3Z0XSsxKSpjW3Z0XTsKCQkJCQkJLy9jb3V0IDw8IHZ0IDw8ICcgJzsKCQkJCQl9CgkJCQlqai89MjsKCQkJfQoJCQkvL2NvdXQgPDwgZHYgIDw8ICcgJzsKCQkJaWYgKGR2Pj0wKQoJCQl7CgkJCQlpZiAoZGVtJTI9PTApIHJlcys9ZHBbZHZdOwoJCQkJZWxzZSByZXMtPWRwW2R2XTsgCgkJCX0KCQl9CgkJY291dCA8PCByZXMgPDwgJ1xuJzsKCX0KfQppbnQgbWFpbigpCnsgCglpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwoJLy9mcmVvcGVuKCIxMTI1OS5JTlAiLCJyIixzdGRpbik7CglpbnQgdDsKCWNpbiA+PiB0OwoJZm9yIChpbnQgaT0xOyBpPD10OyBpKyspCgl7CgkJLy9jb3V0IDw8IGkgPDwgJ1xuJzsKCQlzb2x2ZSgpOwoJfQoJcmV0dXJuIDA7Cn0=