问题描述
铭宝宝很喜欢像素图,所以,他喜欢把像素图都做如下的处理:
首先,把像素图变换成二值图(用$01$表示),然后,在二值图中,把每个点以及和它相邻的点(最多$9$个点)的$01$值加起来,并保存在一个矩阵Mat中。
铭宝宝选择的图像底边和顶边都是空白的(二值图中值为$0$),因为他觉得这样的图很漂亮。
不过因为矩阵很大,铭宝宝担心记录过程中出错。所以现在铭宝宝想知道,根据他所保存下来的矩阵Mat,是否能还原出二值图。
输入描述
输入$T$表示测试组数$(T \leq 30)$
输入两个数$n, m$表示二值图的大小(即矩阵M的大小) $(2 < n \leq 12, m \leq 100)$
接下来输入$n$行,每行$m$个数,表示矩阵Mar
输出描述
输出Impossible,如果不能还原出二值图
输出Multiple,如果还原出来的二值图不唯一
否则输出二值图
输入样例
2
4 4
1 2 3 2
2 3 4 2
2 3 4 2
1 1 1 0
3 1
1
1
0
输出样例
0 0 0 0
0 1 1 1
0 1 0 0
0 0 0 0
Impossible
Hint
样例2中,因为[1 0 0]不是铭宝宝选择的矩阵,所以无解