你的朋友正在设计一种将字符集编码为变长位序列的编码方案。 你需要检查该编码方案是否具有歧义。在这种编码方案中,每个字符被赋予一个互不相同的位序列作为其编码,这些位序列的长度可能不同。一个字符序列的编码是将该序列中各字符的编码按出现顺序连接而成的位序列。如果存在两个不同的字符序列被编码为完全相同的位序列,则称该编码方案是具有歧义的。这样的位序列被称为“歧义二进制序列”。
例如,将字符 ‘A’、‘B’ 和 ‘C’ 分别编码为 0、01 和 10 是具有歧义的。该方案将两个不同的字符字符串 “AC” 和 “BA” 都编码为相同的位序列 010。
输入格式
输入的第一行包含一个整数 $n$ —— 待编码的字符集大小 ($1 \le n \le 1000$)。接下来的 $n$ 行中,第 $i$ 行给出了第 $i$ 个字符的位序列 $w_i$,为一个长度不超过 16 的非空二进制位序列(由 0 或 1 组成)。注意,不同的字符被赋予不同的编码,即对于 $i \neq j$,有 $w_i \neq w_j$。
输出格式
如果给定的编码方案具有歧义,请输出最短歧义二进制序列的位数。否则,输出 0。
样例
样例输入 1
3 0 01 10
样例输出 1
3
样例输入 2
3 00 01 1
样例输出 2
0
样例输入 3
3 00 10 1
样例输出 3
0
样例输入 4
10 1001 1011 01000 00011 01011 1010 00100 10011 11110 0110
样例输出 4
13
样例输入 5
3 1101 1 10
样例输出 5
4