3279: Levko and Sets
[Creator : ]
Description
time limit per test
3 secondsmemory limit per test
256 megabytesinput
standard inputoutput
standard outputLevko loves all sorts of sets very much.
Levko has two arrays of integers a1,a2,... ,an and b1,b2,... ,bm and a prime number p. Today he generates n sets. Let's describe the generation process for the i-th set:
- First it has a single number 1.
- Let's take any element c from this set. For all j (1≤j≤m) if number (c·aibj)modp doesn't occur in the set, then add it to the set.
- Repeat step 2 as long as we can add at least one element to our set.
Levko wonders, how many numbers belong to at least one set. That is, he wants to know what size is the union of n generated sets.
Input
The first line contains three integers n, m and p (1≤n≤104, 1≤m≤105, 2≤p≤109), p is prime.
The second line contains space-separated integers a1,a2,... ,an (1≤ai<p). The third line contains space-separated integers b1,b2,... ,bm (1≤bi≤109).
Output
The single number − the size of the union of the sets.
Examples
Input
1 1 7
2
5
Output
3
Input
1 2 7
2
2 4
Output
3
Input
2 1 7
1 6
2
Output
1
Input
2 1 7
1 6
5
Output
2