#include <iostream>
#include <cstring>
#define ll long long int
#define mod 1000000007
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
int i,j,k,c,n,m;
cin>>n>>c>>m;
int dp[c+1][n+1];
int bin[n+1][n+1];
memset(dp, 0, sizeof(dp));
memset(bin, 0, sizeof(bin));
dp[0][0]=1;
for(i=0;i<=n;i++){
bin[i][0]=1;
}
for(i=1;i<=n;i++){
for(j=1;j<=i;j++){
bin[i][j]=(bin[i-1][j]+bin[i-1][j-1])%mod;
}
}
for(i=1;i<=c;i++){
for(j=1;j<=n;j++){
ll res=0, p, q;
for(k=m;k<=j;k++){
p=(ll)dp[i-1][j-k]%mod;
q=bin[j][k]%mod;
res=(res+ p*q)%mod;
}
dp[i][j]=(res/i)%mod;
}
}
/*for(i=0;i<=c;i++){
for(j=0;j<=n;j++){
cout<<dp[i][j]<< " ";
}cout<<endl;
}*/
cout<<dp[c][n]<<endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KI2RlZmluZSBsbCBsb25nIGxvbmcgaW50CiNkZWZpbmUgbW9kIDEwMDAwMDAwMDcKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpewogICAgaW50IHQ7CiAgICBjaW4+PnQ7CiAgICB3aGlsZSh0LS0pewogICAgICAgIGludCBpLGosayxjLG4sbTsKICAgICAgICBjaW4+Pm4+PmM+Pm07CiAgICAgICAgaW50IGRwW2MrMV1bbisxXTsKICAgICAgICBpbnQgYmluW24rMV1bbisxXTsKICAgICAgICBtZW1zZXQoZHAsIDAsIHNpemVvZihkcCkpOwogICAgICAgIG1lbXNldChiaW4sIDAsIHNpemVvZihiaW4pKTsKICAgICAgICBkcFswXVswXT0xOwogICAgICAgIGZvcihpPTA7aTw9bjtpKyspewogICAgICAgICAgICBiaW5baV1bMF09MTsKICAgICAgICB9CiAgICAgICAgZm9yKGk9MTtpPD1uO2krKyl7CiAgICAgICAgICAgIGZvcihqPTE7ajw9aTtqKyspewogICAgICAgICAgICAgICAgYmluW2ldW2pdPShiaW5baS0xXVtqXStiaW5baS0xXVtqLTFdKSVtb2Q7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yKGk9MTtpPD1jO2krKyl7CiAgICAgICAgICAgIGZvcihqPTE7ajw9bjtqKyspewogICAgICAgICAgICAgICAgbGwgcmVzPTAsIHAsIHE7CiAgICAgICAgICAgICAgICBmb3Ioaz1tO2s8PWo7aysrKXsKICAgICAgICAgICAgICAgICAgICBwPShsbClkcFtpLTFdW2ota10lbW9kOwogICAgICAgICAgICAgICAgICAgIHE9YmluW2pdW2tdJW1vZDsKICAgICAgICAgICAgICAgICAgICByZXM9KHJlcysgcCpxKSVtb2Q7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBkcFtpXVtqXT0ocmVzL2kpJW1vZDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAvKmZvcihpPTA7aTw9YztpKyspewogICAgICAgICAgICBmb3Ioaj0wO2o8PW47aisrKXsKICAgICAgICAgICAgICAgIGNvdXQ8PGRwW2ldW2pdPDwgIiAiOwogICAgICAgICAgICB9Y291dDw8ZW5kbDsKICAgICAgICB9Ki8KICAgICAgICBjb3V0PDxkcFtjXVtuXTw8ZW5kbDsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==