春天到了,校园里开满了郁金香。Infinity经过花坛的时候,常常会停下来数郁金香玩。
Infinity会分别统计不同颜色的花出现的次数,并把它们按照出现次数从多到少排序。
这次Infinity来到了一个很大的花坛前,和往常一样继续数郁金香。
不料,他数到一半时突然忘记数到哪了。Infinity不想从头开始数了,你能帮帮他吗?
第一行有一个整数 $t\ (1 \le t \le 100)$,表示有 $t$ 组数据。
对于每组数据:
第一行有两个整数 $n,m\ (1\le n,m\le 100)$ ,表示花坛的长和宽;
接下来 $n$ 行,每行有一个长度为 $m$ 且由大写字母组成的的字符串,表示对应位置出现的花的种类。其中,相同的字母表示相同的花,不同的字母表示不同的花。
对于每组数据:
第一行输出一个整数 $k$,表示花坛中一共有 $k$ 种不同的花。
接下来 $k$ 行,每行输出一个整数 $x$ 和一个字符 $c$,表示出现了 $x$ 个种类为 $c$ 的花。
你需要按花出现的次数从大到小的顺序输出,如果多种花数量相同,请按花的种类从小到大输出。