20063 - 堆石子

通过次数

1

提交次数

1

时间限制 : 1 秒
内存限制 : 128 MB

m 堆石子,编号为 1, 2, \cdots, m,其石子数量分别记为 a_1, a_2, \cdots, a_m

现在要求第 1 堆石子恰有 n 个(即 a_1 = n),并且此后每堆石子的数量严格小于前一堆,即 a_i <

a_{i-1} (2 \le i \le m)。此外,每堆至少需要有一个石子,即 a_i \ge 1 (1 \le i \le m)。

在总石子数量不设限制的情况下,给定 m \ge 2, n \ge 1,有多少个满足要求的石子堆放方案?

两个方案不同,当且仅当,两个方案中至少有一堆石子数量不同。

如果不存在满足要求的方案,输出 0。由于方案数可能很大,请输出方案数对 10^9 + 7 取模后的结果。

输入

输入一行两个正整数 mn

输出

输出一个整数,表示总方案数对 10^9 + 7 取模后的结果。

样例

输入


                            

输出


                            

提示

说明/提示

样例解释 1

(5, 4, 3)(5, 4, 2)(5, 4, 1)(5, 3, 2)(5, 3, 1)(5, 2, 1) 共计 6 种方案。

数据范围

数据点编号数据范围特殊性质
1,22 \le m \le 100, 1 \le n \le 100\quad 0 \le n - m \le 5
3,4,52 \le m \le 100, 1 \le n \le 10^8
6,7,8,9,102 \le m \le 10^5, 1 \le n \le 10^8