斯特灵数:http://zh.wikipedia.org/wiki/%E6%96%AF%E7%89%B9%E7%81%B5%E6%95%B0
http://blog.youkuaiyun.com/acdreamers/article/details/8521134
http://blog.youkuaiyun.com/cyberzhg/article/details/7875615
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<iostream>
#include<math.h>
using namespace std;
#define inf 0x3f3f3f3f
#define ll __int64
ll mod=1000000007;
ll c[2020][2020],s[2020][2020];
ll C(ll n,ll k)
{
if(c[n][k]!=-1) return c[n][k];
if(k==1) return c[n][k]=n;
if(k==0) return c[n][k]=1;
if(n==k) return 1;
if(k > (n>>1)) return c[n][k]=C(n,n-k);
return c[n][k]=(C(n-1,k-1)+C(n-1,k))%mod;
}
ll S(ll n,ll k)
{
if(s[n][k]!=-1) return s[n][k];
if(k==0 || n<k) return 0;
if(n==1 && k==1) return s[n][k]=1;
return s[n][k]=(S(n-1,k-1)+(n-1)*S(n-1,k))%mod;
}
int main()
{
int t;
cin>>t;
memset(s,-1,sizeof(s));
memset(c,-1,sizeof(c));
while(t--)
{
ll n,f,b;
cin>>n>>f>>b;
if(f+b-1>n)
cout<<0<<endl;
else{
ll ans=((S(n-1,f+b-2)%mod)*(C(f+b-2,f-1)%mod))%mod;
cout<<ans<<endl;
}
}
}