Statement
新的一年带来了新的日历、新的挑战以及生活中许多新的乐趣。然而,有些事情永远不会改变。仍然有许多伟大的编程竞赛即将举行,而我们的女主角 Sphinny 对它们的热情始终未变。
Sphinny 对几个锦标赛感兴趣。每个锦标赛将由若干轮组成。每个锦标赛的组织者尚未决定锦标赛的起始日期,但已经决定了锦标赛中将有多少轮,以及每轮在起始日期后的第几天举行。
在某些情况下,来自不同锦标赛的两轮或更多轮可以安排在同一天。由于 Sphinny 非常热衷于解决问题,如果同一天安排了更多轮,她会更开心。她的幸福值计算如下:对于有 *S* 轮比赛的每一天,她的幸福值将增加 *S*。她的幸福值从 0 开始(别担心——0 是一个快乐的起点)。
下图中有三个锦标赛,分别用不同的颜色表示,Sphinny 的总幸福值为 20。一个锦标赛从一年的第二天开始,一个从第五天开始,一个从第六天开始。
一年中有 N 天。每个锦标赛将以相等的概率在 N 天中的任意一天开始。今年的重大问题是 Sphinny 的幸福值的期望值是多少。
作为一个完美主义者,她不打算近似求解这个问题。相反,她想要精确地知道结果。锦标赛的数量是 T,有 N 种等可能的方式选择锦标赛的开始日期。她将把期望幸福值表示为 *K*+*A*/*B*,其中 *K* 和 *B* 是正整数,*A* 是小于 *B* 的非负整数。如果 *A* 为零,则 *B* 必须为一,否则 *A* 和 *B* 不能有大于 1 的公因子。
如果一个锦标赛在一年中开始得足够晚,它的一些轮次可能会安排到下一年。这些轮次不会增加 Sphinny 今年的幸福值。
Input
输入的第一行是一个整数 C,表示测试用例的数量。接下来是 C 个测试用例。每个测试用例的第一行格式为
```
N T
```
其中 N 是一年中的天数,T 是锦标赛的数量。接下来是 T 行,每行对应一个锦标赛,格式为
```
m d2 d3 ... dm
```
表示有 m 轮,第 i 轮将在锦标赛的第 d 天举行。锦标赛的第一轮在第 1 天举行(d= 1)。
### 数据范围
- 1 ≤ C ≤ 50
- 1 ≤ N ≤ 10
- 2 ≤ m ≤ 50
- 1 < d < d < ... < d ≤ 10000
- 1 ≤ T ≤ 2
- 1 ≤ T ≤ 50
Output
按测试用例顺序逐个输出答案。对于每个测试用例,输出一行,格式为 K+A/B,其中 *K*、*A* 和 *B* 如上所述。
Examples
Input
2
1 1
2 2
4 2
3 2 4
2 3Output
1+0/1
5+1/8Constraints
- Time limit: 10000 ms
- Memory limit: 1048576 KB
- Tag: math