#include <cstdio>
#include <unordered_set> // chiar nu stiam ca exista chestia asta
#include <cstring>
#define DIM 276997
using namespace std;
FILE *fin = freopen("dtcsu.in" ,"r", stdin );
FILE *fout= freopen("dtcsu.out","w", stdout);
unordered_set <long long int> mySet;
void Read(){
int i; long long int X;
for(i = 1; i <= DIM; ++ i){
scanf("%lld", &X);
if(X & 1)
mySet.insert(X);
}
return;
}
inline long long int ub(long long int X){
return ((X ^ (X - 1)) & X);
}
void Write(){
int Q, i, nr = 0;
long long int X;
scanf("%d", &Q);
for(i = 1; i <= Q; ++ i){
scanf("%lld", &X);
if(!X) continue;
X /= ub(X);
if(mySet.find(X) != mySet.end())
nr ++;
}
printf("%d\n", nr);
return;
}
int main(){
Read();
Write();
fclose(stdin );
fclose(stdout);
return 0;
}