#abc156e. [abc156_e]Roaming

[abc156_e]Roaming

問題文

nn 個の部屋がある建物があります。 部屋には 11 から nn までの番号が付いています。

建物の各部屋から、他の任意の部屋に移ることが可能です。

ここで、建物のある部屋 ii にいる人が、別の部屋 j (ineqj)j~ (i \\neq j) に移ることを 人の移動 と呼ぶことにします。

最初、建物の各部屋には人が 11 人いました。

このあと現在までに、人の移動がちょうど kk 回起きたことが分かっています。

現在、建物の各部屋にいる人の数の組合せとして、ありえるものは何通りでしょうか。

(109+7)(10^9 + 7) で割った余りを求めてください。

制約

  • 入力は全て整数である。
  • 3leqnleq2times1053 \\leq n \\leq 2 \\times 10^5
  • 2leqkleq1092 \\leq k \\leq 10^9

入力

入力は以下の形式で標準入力から与えられる。

nn kk

出力

現在、建物の各部屋にいる人の数の組合せとして、ありえるものの個数を (109+7)(10^9 + 7) で割った余りを出力せよ。


入力例 1

3 2

出力例 1

10

現在、部屋 11 にいる人の数を c1c_1、部屋 22 にいる人の数を c2c_2、部屋 33 にいる人の数を c3c_3 と すると、(c1,c2,c3)(c_1, c_2, c_3) としてありえるものは、

  • (0,0,3)(0, 0, 3)
  • (0,1,2)(0, 1, 2)
  • (0,2,1)(0, 2, 1)
  • (0,3,0)(0, 3, 0)
  • (1,0,2)(1, 0, 2)
  • (1,1,1)(1, 1, 1)
  • (1,2,0)(1, 2, 0)
  • (2,0,1)(2, 0, 1)
  • (2,1,0)(2, 1, 0)
  • (3,0,0)(3, 0, 0)

1010 通りです。

例えば、まず部屋 11 にいる人が部屋 22 に移動し、 次に部屋 22 にいる誰かが部屋 33 に移動した場合を考えると、 (c1,c2,c3)(c_1, c_2, c_3)(0,1,2)(0, 1, 2) になります。


入力例 2

200000 1000000000

出力例 2

607923868

個数を (109+7)(10^9 + 7) で割った余りを出力してください。


入力例 3

15 6

出力例 3

22583772