#include <cmath> #include <cstdio> #include <vector> #include <iostream> #include <algorithm> #define MOD 100003 using namespace std; typedef long long LL; //Google Codejam 2008 Reference LL itable[MOD]; LL ftable[MOD]; LL mod(LL a, LL m) { a %= m; if (a < 0) a += m; return a; } LL inverse(LL a, LL m) { a = mod(a, m); if (a == 1) return 1; return mod((1 - m * inverse(m % a, a)) / a, m); } void setup() { itable[0] = 0; ftable[0] = 1; for (LL i = 1; i < MOD; i++) { itable[i] = inverse(i, MOD); ftable[i] = (ftable[i - 1] * i) % MOD; } } void factorial(LL n, LL &p, LL &m){ if (n < MOD) { p = 0; m = ftable[n]; } else { LL s = n / MOD; factorial(s, p, m); p += s; m = (m * ftable[n % MOD]) % MOD; if (s & 1) m = mod(-m, MOD); } } LL choose(LL n, LL r) { LL pa, pb, pc; LL ma, mb, mc; if (r < 0 || r > n) return 0; factorial(n, pa, ma); factorial(r, pb, mb); factorial(n - r, pc, mc); if (pa > pb + pc) return 0; mb = (mb * mc) % MOD; return (ma * itable[mb]) % MOD; } int main() { int t; scanf("%d",&t); setup(); while(t--){ LL n,k; scanf("%lld %lld",&n,&k); n = n-k+(LL)1; if(k>n) printf("0\n"); else{ LL ans = choose(n,k); printf("%lld\n",ans); } } return 0; }