The Monkey King

Accepts: 19
Submissions: 71
Time Limit: 8000/4000 MS (Java/Others)
Memory Limit: 65536/65536 K (Java/Others)
问题描述
就像大家所知道的,美猴王的名字叫孙悟空。他和他的后代们生活在花果山。一天,他的儿子得到了$n$个桃子。现在他们有$m$个猴子(包括悟空在内),他们被从$1$到$m$标号,悟空的号码是$1$。悟空想把这些桃子分给他们自己。由于悟空是大王,所以他获得的桃子必须是最多的。悟空想知道有多少种不同的分配方法。
例如n=2,m=3的时候,只有一种分法2 0 0。
当给定$n,m$时,你的任务是计算悟空可以有多少种不一样的方法来分配这些桃子。由于答案比较大输出对$1000000007$取余的结果即可。
输入描述
多组测试数据。在输入文件的第一行有一个整数T,表示有T组数据。
在接下来的T行,每行包含n和m。他们的含义在上边已经提到。

[Technical Specification]
所有输入均为整数。
$1 \leq T \leq 25$
$1 \leq n,m \leq 100000$
输出描述
对于每一个数据在一行中输出答案。
查看样例可以获得更多信息。
输入样例
2
2 2
3 5
输出样例
1
5
Hint
第二组样例中有5种分配方案,他们是
2 1 0 0 0
2 0 1 0 0
2 0 0 1 0
2 0 0 0 1
3 0 0 0 0