You are given a sequence of n integers S and a sequence of different q integers T. Write a program which outputs C, the number of integers in T which are also in the set S.

Notes

Constraints

* Elements in S is sorted in ascending order
* n ≤ 100000
* q ≤ 50000
* 0 ≤ an element in S ≤ 109
* 0 ≤ an element in T ≤ 109

Input

In the first line n is given. In the second line, n integers are given. In the third line q is given. Then, in the fourth line, q integers are given.

Output

Print C in a line.

Examples

Input

5
1 2 3 4 5
3
3 4 1


Output

3


Input

3
1 2 3
1
5


Output

0


Input

5
1 1 2 2 3
2
1 2


Output

2
#include <cstdio>
#include <set>

using namespace std;

set<int> s;
set<int>::iterator it;

int n;
int m;
int counter1 = 0;
int x;
int i;
int j;

int main(){
	scanf("%d",&n);
	for(i=0;i<n;i++){
		scanf("%d",&x);
		s.insert(x);
	}
	scanf("%d",&m);	
	for(i=0;i<m;i++){
		scanf("%d",&x);
		it = s.lower_bound(x);
		if(*it==x) counter1++;
	}
	printf("%d\n",counter1);
	return 0;
}
