問題文
正整数 N, M, D が与えられます。
ただし、D は 100 以上 M 未満かつ、M の約数です。
次のような条件を満たす、長さ N の数列は何通りあるでしょう?
- 数列の各要素は 1 以上 M−1 以下かつ、D でない整数である
- 数列の要素の総和は M の倍数である
答えを 109+7 で割った余りを出力してください。
制約
- 1≤N≤1018
- 200≤M≤10000
- 100≤D<M
- M は 100 以上 M 未満の約数を 1 つ以上持つ
- D は M の約数である
- 入力はすべて整数である
入力
入力はすべて整数である。
出力
計算結果を一行に出力せよ。
サンプル
N=1 の場合は条件を満たす数列は存在しません。
1≤i≤199 かつ i=100 を満たす i を使って (i,200−i) と書くことができる数列だけが考えられます。
入力3
998244353998244353 9982 161