Time Limit : sec, Memory Limit : KB
Japanese

C: Not Found

問題

文字 0, 1 からなる長さ $n$ の相異なる文字列が $m$ 個与えられるので、以下の条件をすべて満たす文字列 $t$ を構築せよ。

  • $t$ は 0, 1, * のみからなる長さ $n$ の文字列である
  • $t$ に含まれる 01 の個数の合計は $20$ 以下である
  • $t$ 中の文字 *0 または 1 にどのように置き換えても、全ての $1 \leq i \leq m$ に対して,与えられた $i$ 番目の文字列 $s_i$ と $t$ が一致することはない

入力形式

$n$ $m$
$s_1$
...
$s_m$

制約

  • $1 \leq n$
  • $1 \leq m < 2^n$
  • $n \times m \leq 2500000$
  • $|s_i| = n$ ($1 \leq i \leq m$)
  • $s_i \neq s_j$ ($1 \leq i < j \leq m$)
  • $s_i$ は 0, 1 のみからなる ($1 \leq i \leq m$)

出力形式

条件を満たす文字列を一行に出力せよ。条件を満たすものであれば何を出力しても構わない。条件を満たす文字列が存在しない場合は hokudai と出力せよ。

入力例1

3 2
101
000

出力例1

*1*

*0 とみても 1 とみても 101000 に一致することはありません。

入力例2

2 3
11
10
00

出力例2

01