Problem Description
There are m sets Pi,Qi,∀i(1≤i≤m),Pi,Qi⊆{1…i−1}. There are nested loops with m layers, and for the jth layer, the loop variable is ij, the lower bound equals max{ik(k∈Pj)}(especially, when Pj is empty set, it means the lower bound equals 1), the upper bound equals min{ik(k∈Qj)}(especially, when Qj is empty set, it means the upper bound equals n). HazelFan want to know how many times the loop body will be executed, module p.
Input
The first line contains a positive integer T(1≤T≤5), denoting the number of test cases.
For each test case:
The first line contains three positive integers m,n,p(1≤m≤15,1≤n≤109,2≤p≤109+7).
The next m lines, the ith line contains several nonnegative integers describing the sets Pi,Qi. The first integer is Ai, denoting the size of Pi, then next Ai integers denotes the elements of Pi. The next integer is Bi, denoting the size of Qi, then next Bi integers denotes the elements of Qi.
Output
For each test case:
A single line contains a nonnegative integer, denoting the answer.
Sample Input
2
2 10 233
0 0
1 1 0
6 10 987654321
0 0
1 1 0
0 0
1 3 0
0 1 4
1 2 2 1 2
Sample Output
55
3850