Statement Coverage

Time Limit : 1 sec, Memory Limit : 65536 KB

D: Statement Coverage / 命令網羅

「うわっ!なんてひどいコードだ!」

古いソースコードを開きながら先輩が叫んでいる. また面倒な仕事が押し付けられそうだ…….

ソースコードにはめまいがしそうなほどたくさんの if 文が並んでいる.

if 条件文 1; 命令 1
if 条件文 2; 命令 2
if 条件文 3; 命令 3
...

どうやら制御の構造はそれほど複雑ではないらしい.

1 つの条件文には,変数と NOT 演算子 "~" ,そして AND "&" / OR "|" の 2 項演算子が現れる. 変数は真または偽を表し,変数名は1文字以上のアルファベットで表される. 演算の順序は NOT 演算子が優先だが,括弧で先に計算するよう順序を変えてもよい. 変数は 1 つもしくは 2 つ,2 項演算は高々 1 回,それ以外は何度でも現れて良い.

とりあえずコンパイルは通った. コードを修正する前にテストを書く必要がある. 今回頼まれたのは,このコードのテストケースを書く作業だ. テストケースの数は,全ての命令が 1 度以上実行されれば十分である. テストケースの数を見積もって, 1 つで済むようなら引き受けることにしよう.

Input

与えられる入力は以下のように表される.

N M
cond1;
cond2;
...
condN;

N ( 1 ≦ N ≦ 500 ) 行の条件文が現れ,条件文中には M ( 1 ≦ M ≦ 500 ) 種類の変数が存在する. 条件文 condi は最大 1000 文字である. また,変数名は10文字を超えない.

Output

作業を引き受けるなら accept,拒否するなら reject を 1 行出力せよ.

Sample Input 1

3 4
~~(~A|B);
~(~C&~D);
~(~A|~~D);

Sample Output 1

accept

Sample Input 2

2 1
var;
~var;

Sample Output 2

reject

Source: Ritsumeikan University Competitive Programming Camp 2013, Day3 , Problem set from Ritsumeikan University teams, Shiga, Japan, 2013-03-13
Problem Setter:  utisam