#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;

#define MOD 100003

long long rem[MOD];

long long inst(long long arg){
    if(arg == 0) return 0;
    return arg/MOD + inst(arg/MOD);
}

long long mod_pow(long long b, long long e){
    if(e == 0) return 1;
    if(e % 2) return (b * mod_pow((b*b)%MOD, e/2)) % MOD;
    return mod_pow((b*b)%MOD, e/2);
}

long long frem(long long v){
    long long cyc = v / MOD;
    int tail = v % MOD;    
    
    long long sfrem = 1;
    if(cyc > 0) sfrem = frem(cyc);
    return (sfrem * (mod_pow(rem[MOD-1], cyc) * rem[tail]) % MOD) % MOD;
}

int main() {
    rem[0] = 1LL;
    for(int i=1; i<MOD; i++)
        rem[i] = (i * rem[i-1]) % MOD;
    
    int T;
    for(cin >> T; T; T--){
    
        long long N, K;
        cin >> N >> K;
        
        long long numer = inst(N - K + 1);
        long long denom = inst(K) + inst(N - K - K + 1);
            
        if((N-K+1 < 0) || (N-K+1 < K) || (numer > denom))
            cout << 0 << endl;
        else{
            long long top = frem(N - K + 1);
            long long bot = (frem(K) * frem(N - K - K + 1)) % MOD;
                                    
            long long boti = mod_pow(bot, MOD - 2);
            cout << (top * boti) % MOD << endl;
        }
    }
    
    return 0;
}