#include <bits/stdc++.h>
using namespace std;
long long power(long long x, long long y, long long p){
long long res = 1;
while(y>0){
if(y&1) res=(res*x)%p;
y=y>>1;
x=(x*x)%p;
}
return res;
}
long long mod(long long n,long long p){
return power(n, p - 2, p);
}
long long nCr(long long n, long long r, long long p){
if(n<r) return 0;
if(r==0) return 1;
long long a[n + 1];
a[0]=1;
for(int i=1;i<=n;i++) a[i]=(a[i-1]*i)%p;
return (a[n]*mod(a[r],p)%p*mod(a[n-r],p)%p)%p;
}
int main()
{
int t;
cin>>t;
while(t--){
long long a,b,p=1000000007;
cin>>a>>b;
cout<< nCr(a,b, p);
cout<<"\n";
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmxvbmcgbG9uZyBwb3dlcihsb25nIGxvbmcgeCwgbG9uZyBsb25nIHksIGxvbmcgbG9uZyBwKXsKICAgIGxvbmcgbG9uZyByZXMgPSAxOwoJd2hpbGUoeT4wKXsKICAgICAgICBpZih5JjEpIHJlcz0ocmVzKngpJXA7CiAgICAgICAgeT15Pj4xOwogICAgICAgIHg9KHgqeCklcDsKICAgIH0KICAgIHJldHVybiByZXM7Cn0KbG9uZyBsb25nIG1vZChsb25nIGxvbmcgbixsb25nIGxvbmcgcCl7CiAgICByZXR1cm4gcG93ZXIobiwgcCAtIDIsIHApOwp9CmxvbmcgbG9uZyBuQ3IobG9uZyBsb25nIG4sIGxvbmcgbG9uZyByLCBsb25nIGxvbmcgcCl7CiAgICBpZihuPHIpIHJldHVybiAwOwogICAgaWYocj09MCkgcmV0dXJuIDE7CiAgICBsb25nIGxvbmcgYVtuICsgMV07CiAgICBhWzBdPTE7CiAgICBmb3IoaW50IGk9MTtpPD1uO2krKykgYVtpXT0oYVtpLTFdKmkpJXA7CiAgICByZXR1cm4gKGFbbl0qbW9kKGFbcl0scCklcCptb2QoYVtuLXJdLHApJXApJXA7Cn0KaW50IG1haW4oKQp7CglpbnQgdDsKCWNpbj4+dDsKCXdoaWxlKHQtLSl7CgkgICAgbG9uZyBsb25nIGEsYixwPTEwMDAwMDAwMDc7CgkgICAgY2luPj5hPj5iOwoJICAgIGNvdXQ8PCBuQ3IoYSxiLCBwKTsKCSAgICBjb3V0PDwiXG4iOwoJfQp9