Dr. Who 正在组织一场晚宴,并将邀请若干位客人。如果一位客人能够与固定数量的其他客人交谈,他就会感到高兴。我们假设客人不能与自己交谈。如果可能的话,请通过在客人之间安排交谈来帮助 Dr. Who 让所有客人都感到高兴。
输入格式
输入包含多个数据集,每个数据集在文件中占一行。
一个数据集由 $n \le 10000$ 个正整数 $a_1, a_2, \dots, a_n$ 组成,它们之间用单个空格分隔。最后一个整数 $a_n$ 后面紧跟换行符。
每个数字 $a_i$($1 \le i \le n$)表示第 $i$ 位客人希望拥有的交谈伙伴数量。我们假设对于所有 $1 \le i \le n$,都有 $a_i \le 1000$。
最后一个数据集后面是文件结束符(EOF)。
输出格式
如果可以让所有客人都感到高兴,程序输出应包含一个 $n \times n$ 的矩阵 $m$。如果客人 $i$ 和 $j$ 之间有交谈,则 $m[i][j]=m[j][i]=1$,否则为 $0$。
矩阵在标准输出中的表示如下:每一行中的每个值 $m[i][j]$ 后面都应紧跟一个空格(包括该行的最后一个值)。每一行之间用换行符分隔。
如果无法让所有客人都感到高兴,则程序输出消息 fail。
每个矩阵或 fail 消息之后都必须紧跟一个空行。
样例
输入样例 1
3 3 1 1 4 4 3 3 2 2 2 3 3 1 1 2 2 2 2
输出样例 1
fail 0 1 1 0 1 0 1 1 0 0 1 1 0 1 1 0 0 1 0 1 0 0 1 1 0 0 1 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 0 0 fail 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0