// PR Bab 17, soal 3 -- pembahasan. #include using namespace std; const long long MOD = 1000000007; const int MAKS = 1000005; long long fakt[MAKS]; long long pangkat_mod(long long a, long long b, long long m) { long long hasil = 1; a %= m; while (b > 0) { if (b % 2 == 1) hasil = hasil * a % m; a = a * a % m; b /= 2; } return hasil; } long long kombinasi(int n, int r) { if (r < 0 || r > n) return 0; long long bawah = fakt[r] * fakt[n - r] % MOD; return fakt[n] * pangkat_mod(bawah, MOD - 2, MOD) % MOD; } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); fakt[0] = 1; for (int i = 1; i < MAKS; i++) fakt[i] = fakt[i - 1] * i % MOD; int q; cin >> q; while (q--) { int n, r; cin >> n >> r; cout << kombinasi(n, r) << "\n"; } return 0; }