N 個の部屋があり, それぞれの部屋の床にはうさぎの絵が描かれている. あなたが部屋 r のうさぎの絵の右耳の部分に乗ると, あなたは部屋 A\[r] に書かれたうさぎのしっぽの上にテレポートする. 同様に, 部屋 r のうさぎの絵の左耳の部分に乗ると, 部屋 B\[r] に書かれたうさぎのしっぽの上にテレポートする.
整数 X, Y, Z が与えられる. ねこは, 以下の条件を満たすようにテレポートを設定しようとしている. テレポートの N2N 通りの設定方法のうち, 条件を満たすものは何通りか, mod 1,000,000,007で求めよ.
条件: 任意の部屋 r に対し, r から右耳にちょうど X 回乗り, 左耳にちょうど 1 回乗り, 右耳にちょうど Y 回乗り, 左耳にちょうど 1 回乗り, 右耳にちょうど Z 回乗ると, r に戻る.
入力は以下の形式で与えられる:
N X Y Z
テレポートの設定方法を 1,000,000,007 で割ったあまりを表す整数を 1 行に出力せよ.