Rikka 和她的同学们正在玩一个在线游戏。游戏中有 $n$ 名玩家,玩家之间存在一些朋友关系。朋友关系是双向的。
游戏开始时,随机选择一名玩家作为“龙”(dragon),其他玩家被标记为“英雄”(hero)。
游戏按回合进行。每一回合包含以下三个步骤:
- 每个“英雄”被要求决定是否攻击“龙”。注意,对于每位玩家,在做出此决定时,其他人的决定是未知的。如果一名“英雄”是“龙”的朋友,那么该“英雄”必须选择不攻击;
- 如果所有“英雄”都选择不攻击“龙”,游戏立即结束。否则,“龙”将被“英雄”们淘汰;
- 假设玩家 $i$ 是第一个选择攻击的“英雄”(索引最小的玩家)。玩家 $i$ 成为新的“龙”,然后开始新的一回合。
当游戏结束时,每位存活的“英雄”将获得 10 分,最后的“龙”将获得 100 分,每位被淘汰的玩家仅获得 1 分。
所有玩家都希望最大化自己的得分,并且假设所有玩家都足够聪明。
对于每位玩家,Rikka 希望你确定:如果该玩家在开始时被选为“龙”,游戏是否会在第一回合立即结束?
输入格式
第一行包含一个整数 $n$ ($1 \le n \le 500$),表示玩家人数。
接下来 $n$ 行。每行包含一个长度为 $n$ 的 01 字符串 $s_i$。当且仅当玩家 $i$ 和玩家 $j$ 是朋友时,$s_{i,j} = 1$。
输入保证 $s_{i,j} = s_{j,i}$ 且 $s_{i,i} = 0$。
输出格式
输出一行长度为 $n$ 的 01 字符串 $res$。当且仅当玩家 $i$ 被选为第一位“龙”时游戏会在第一回合立即结束,$res_i = 1$。
样例
样例输入 1
2 00 00
样例输出 1
00
样例输入 2
3 000 000 000
样例输出 2
111
样例输入 3
4 0111 1000 1000 1000
样例输出 3
1111
样例输入 4
4 0101 1010 0101 1010
样例输出 4
0000
说明
对于第一个样例,无论选择哪位玩家,另一位玩家都会选择攻击:如果他选择攻击,他将获得 100 分,否则他只能获得 10 分。因此,游戏继续进行到第二回合。
对于第二个样例,不失一般性,假设第三位玩家被选为第一位“龙”。那么:
- 对于第一位玩家,如果他选择攻击,他将成为第二回合的“龙”。然而,根据第一个样例,他随后会被淘汰并只能获得 1 分。因此,他会选择不攻击,从而获得 10 分;
- 对于第二位玩家,出于同样的原因,他也会选择不攻击。
因此,游戏将在第一回合结束。