#abc239h. [abc239_h]Dice Product 2

[abc239_h]Dice Product 2

問題文

すぬけ君は 11 以上 NN 以下の整数が等確率で出るサイコロと整数 11 を持っています。
すぬけ君は持っている数が MM 以下である間、次の操作を繰り返します。

  • サイコロを振り、出た目を xx とする。持っている数に xx を掛ける。

操作を終了するまでにすぬけ君がサイコロを振った回数の期待値を textmod109+7\\text{mod } 10^9+7 で求めてください。

期待値 pmod109+7\\pmod{10^9+7} の定義 求める期待値は必ず有理数になることが証明できます。また、この問題の制約のもとでは、その値を既約分数 fracPQ\\frac{P}{Q} で表した時、Qnotequiv0pmod109+7Q \\not\\equiv 0 \\pmod{10^9+7} となることも証明できます。よって、$R \\times Q \\equiv P \\pmod{10^9+7}, 0 \\leq R \\lt 10^9+7$ を満たす整数 RR が一意に定まります。 この RR を答えてください。

制約

  • 2leqNleq1092 \\leq N \\leq 10^9
  • 1leqMleq1091 \\leq M \\leq 10^9

入力

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

NN MM

出力

答えを出力せよ。


入力例 1

2 1

出力例 1

2

答えはサイコロで 22 が出るまでにサイコロを振る回数の期待値になります。よって 22 を出力します。


入力例 2

2 39

出力例 2

12

答えはサイコロで 2266 回出るまでにサイコロを振る回数の期待値になります。よって 1212 を出力します。


入力例 3

3 2

出力例 3

250000004

答えは frac94\\frac{9}{4} です。4times250000004equiv9pmod109+74 \\times 250000004 \\equiv 9 \\pmod{10^9+7} なので 250000004250000004 を出力します。
bf109+7=1000000007\\bf{10^9 + 7 = 1000000007}mathrmmod\\mathrm{mod} を取る必要があるのに注意してください。


入力例 4

2392 39239

出力例 4

984914531

入力例 5

1000000000 1000000000

出力例 5

776759630