你正在玩一个单词拼图游戏。游戏开始时有一个 3 乘 3 的网格,每个单元格中包含字母 A、B 或 C。
这个拼图的目标是找到长度为 3 的字典序最小的单词。该单词可以通过选择三个不同的单元格来形成,其中包含第一个字母的单元格与包含第二个字母的单元格相邻,且包含第二个字母的单元格与包含第三个字母的单元格相邻。
如果两个单元格共享一条边或一个角,则它们相邻,如下图所示。形式化地,如果 $(r, c)$ 表示第 $r$ 行第 $c$ 列的单元格,则单元格 $(r, c)$ 与单元格 $(r, c + 1)$、$(r - 1, c + 1)$、$(r - 1, c)$、$(r - 1, c - 1)$、$(r, c - 1)$、$(r + 1, c - 1)$、$(r + 1, c)$ 以及 $(r + 1, c + 1)$ 相邻。
确定在网格中可以找到的长度为 3 的字典序最小的单词。
如果存在一个整数 $1 \le i \le n$,使得对于所有 $1 \le j < i$ 都有 $s_j = t_j$,且在字母顺序中 $s_i < t_i$,则称长度为 $n$ 的字符串 $s$ 在字典序上小于相同长度的字符串 $t$。下图展示了一些网格示例以及在这些网格中可以找到的长度为 3 的字典序最小的单词。
输入格式
输入包含三行,每行包含三个字母,表示拼图网格。网格中的每个字母只能是 A、B 或 C。
输出格式
输出在网格中可以找到的长度为 3 的字典序最小的单词。
样例
输入 1
BCB CAC BCB
输出 1
ABC
输入 2
BCB CCC CCA
输出 2
ACB
输入 3
ACA CBC ACA
输出 3
ABA
输入 4
ACA CAC ACA
输出 4
AAA
输入 5
CCC CBC CCC
输出 5
BCC