Q825: Walking on the Safe Side

在正方城這個城市走路是件相當容易的事,因為所有的道路都是像棋盤的線一樣,把城市切割成一塊一塊的正方形。大部分的十字路口都是安全 的,行人可以直接通過。然而也有少數的十字路口比較危險,所以建有地下道或天橋供行人通過。

現在有一個人想要從位於城市西北方(也就是左上角)的公園十字路口到位於東南方(也就是右下角)的車站十字路口去。由於他是個懶惰的 人,他不想要走比需要多一點點的路,也就是說他一定是往下或往右走,絕對不會往上或往左走。另外,他也不喜歡走天橋或地下道,所以他會避開這些危險的十字 路口。你的任務就是幫他算一下從左上角走到右下角有多少種不同的走法。

以下的圖顯示出有4條東西向的道路,有5條南北向的道路,有3個十字路口是危險的。所以從左上角走到右下角要走(N-1)+(W-1) = 3+4 = 7格的距離,並且總共有4種不同的走法。

Input

輸入的第一列有一個正整數,代表以下有多少組測試資料。每組測試資料的第一列有2個整數W,N,W代表東西向道路的數目,N代表南北向道路的數目,編號如 上圖所示。接下來的W列代表這W條東西向道路,每列的第一個數為這是第幾條東西向道路,接下來有0個或多個不等的數,代表某些南北向道路與這條東西向道路 相交的十字路口是危險的。

輸入的第一列與第一組測試資料之間,以及各組測試資料之間均有一空白列,第一組Sample Input表示的路如上圖所示,請參考。

譯註:原文題目沒有給W,N的範圍,經熱心人士測試之後,發現W,N都不大。所以本題資料型態用 int or long long 就可以了,不需用到大數運算。

Output

每組測試資料輸出一列,為一個整數。代表這個人從左上角走到右下角有多少種不同的走法。

測試資料亦 請空一列。

Sample Input

2

4 5
1
2 2
3 3 5
4

5 5
1
2 1 2 3 4
3 1 2 3
4 1 2 3 5
5 1 2 3

Sample Output

4

0