选择题

题目描述

docriz 正在考试,他遇到了一个奇怪的选择题:这个选择题共有 $n$ 个选项,其中只有一个选项是正确的。他完全不会做这题,所以只能靠蒙。 蒙这道题分为 $n - 2$ 轮,在第 $1$ 轮开始之前,docriz 会在这 $n$ 个选项中随机蒙一项,之后的每轮流程如下:首先,nocriz 会过来帮他排除一个选项,由于 nocriz 事先知道答案,所以他会在现有的除正确的那一项和 docirz 正在选的那一项外的选项里,随机删去一个。之后,docriz 可以选择是否更换自己蒙的选项,如果更换,则随机更换到除正在选的那一项之外的任意一项。 docriz 在这 $n - 2$ 轮中,由于和 nocriz 达成的神秘协定,需要恰好更换 $k$ 次选项。他想知道,如何更换,使得自己蒙对的概率最大,输出这个概率。为了方便,你需要输出这个概率的分数形式在模 $10^9 + 7$ 意义下的结果。

输入输出格式

输入格式


一行两个整数 $n, k$,意义如上所述。

输出格式


一行一个数,表示答案。

输入输出样例

输入样例 #1

3 1

输出样例 #1

666666672

输入样例 #2

3 0

输出样例 #2

333333336

输入样例 #3

4 1

输出样例 #3

750000006

输入样例 #4

4 2

输出样例 #4

625000005

输入样例 #5

100000 99998

输出样例 #5

439903656

说明

样例 $1$ 到 $4$ 分别为 $\frac{2}{3}, \frac{1}{3}, \frac{3}{4}, \frac{5}{8}$。 对于 $30\%$ 的数据,保证 $5 \leq n \leq 10$。 对于另外 $5\%$ 的数据,保证 $k = 0$。 对于另外 $10\%$ 的数据,保证 $k = 1$。 对于另外 $10\%$ 的数据,保证 $k = n - 2$。 对于另外 $5\%$ 的数据,保证 $n \leq 10^2$。 对于另外 $10\%$ 的数据,保证 $n \leq 10^3$。 对于 $100\%$ 的数据,保证 $5 \leq n \leq 10^5, 0 \leq k \leq n - 2$。