AT_codefestival_2015_ex_b TRAX

Description

[problemUrl]: https://atcoder.jp/contests/code-festival-2015-exhibition/tasks/codefestival_2015_ex_b すぬけ君はTRAXというボードゲームのコマを並べて遊んでいます。TRAXのコマは下図のようなものです。 ![token](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_codefestival_2015_ex_b/09a3886f2305300ec5ea15202b380bf17a7abdff.png)すぬけ君はこのコマを以下のようなルールで並べようとしています。 - $ H*W $ 個のコマを **全て表向きで** 、縦 $ H $ 行、横 $ W $ 行のマス目状に敷き詰める。コマの向きは $ 4 $ 通り考えられるがいずれの向きでも構わない。 - 赤い線は隣のコマの赤い線と、白い線は隣のコマの白い線と繋がるようにしなければならない。つまり、赤い線の端と白い線の端が隣り合ってはいけない。 - 輪っかができてはならない。下図は輪っかの例である。右の例の白い線のような大きな輪っかもできてはいけません。 ![cycle](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_codefestival_2015_ex_b/f5e8b33d3a6fea7acd1a91c3b9e63b6d49d76ecb.png)すぬけ君はすでに $ N $ 個のコマを置きました。$ i\ (1\ ≦\ i\ ≦\ N) $ 個目のコマは $ R_i $ 行目の $ C_i $ 列目に $ D_i $ の向きで置きました。向きは $ 1\ ~\ 4 $ の整数で表され、それぞれの向きは下図のように対応しています。 ![direction](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_codefestival_2015_ex_b/031354a23066b320982b325f15484abcf47c30ef.png)さて、残りのコマの置き方は何通りあるでしょうか?答えは非常に大きな数になることがあるので $ 10^9+7 $ で割った余りを求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ H $ $ W $ $ N $ $ R_1 $ $ C_1 $ $ D_1 $ $ R_2 $ $ C_2 $ $ D_2 $ : $ R_N $ $ C_N $ $ D_N $ - $ 1 $ 行目には、$ 2 $ つの整数 $ H\ (1\ ≦\ H\ ≦\ 10^5),\ W\ (1\ ≦\ W\ ≦\ 10^5) $ が空白区切りで与えられる。これは、すぬけ君がコマを縦 $ H $ 行、横 $ W $ 行のマス目状に敷き詰めようとしていることを表す。 - $ 2 $ 行目には、すぬけ君がすでに置いたコマの個数を表す整数 $ N\ (0\ ≦\ N\ ≦\ 10^5) $ が与えられる。 - $ 3 $ 行目からの $ N $ 行には、すぬけ君がすでに置いたコマの情報が与えられる。このうち $ i\ (1\ ≦\ i\ ≦\ N) $ 行目には $ 3 $ つの整数 $ R_i\ (1\ ≦\ R_i\ ≦\ H),\ C_i\ (1\ ≦\ C_i\ ≦\ W),\ D_i\ (1\ ≦\ D_i\ ≦\ 4) $ が空白区切りで与えられる。これは、すぬけ君が $ R_i $ 行目の $ C_i $ 列目に $ D_i $ の向きでコマを置いたことを表している。ただし、同じ場所は $ 2 $ 回以上与えられない、すなわち $ p\ \neq\ q $ のとき $ R_p\ \neq\ R_q $ または $ C_p\ \neq\ C_q $ を満たすことが保証される。

Output Format

残りのコマの置き方の個数を $ 10^9+7\ (1,000,000,007) $ で割った余りを $ 1 $ 行に出力せよ。出力の末尾に改行を入れること。

Explanation/Hint

### 部分点 この問題には部分点が設定されている。 - $ N\ =\ 0 $ を満たすデータセットに正解した場合は、$ 90 $ 点が与えられる。 - 追加の制約のないデータセットに正解した場合は、上記とは別に $ 60 $ 点が与えられる。 ### Sample Explanation 1 下図のような $ 4 $ 通りの置き方が考えられます。 !\[sample\](https://code-festival-2015-exhibition.contest.atcoder.jp/img/other/code\_festival\_2015\_final/ex/traxsample.jpg) ### Sample Explanation 2 どのように置いてもルールを満たすような置き方はできません。