#include <iostream>
#include <fstream>
#include <unordered_map>
#include <set>
#include <iomanip>
#include <algorithm>
#include <bitset>
#include <cstring>
#include <cstdio>
using namespace std;
ifstream fin("dtcsu.in");
ofstream fout("dtcsu.out");
long long nums[276998];
int numsLen;
bool isFound(long long number) {
int left = 1, right = numsLen;
while (left < right) {
int m = (left + right) / 2;
if (nums[m] < number) {
left = m + 1;
} else {
right = m;
}
}
return nums[left] == number;
}
int main() {
ios_base::sync_with_stdio(false);
fin.tie(NULL);
for (int i = 1; i <= 276997; ++i) {
long long number;
fin >> number;
nums[++numsLen] = number;
}
sort(nums + 1, nums + numsLen + 1);
int q;
fin >> q;
int ans = 0;
for (int i = 1; i <= q; ++i) {
long long number;
fin >> number;
if (isFound(number)) {
++ans;
}
}
fout << ans;
return 0;
}