#Adapted from throwaway123's submission on Ajob Subsequence def pro(l,p): return reduce(lambda x,y: (x*y)%p, l, 1) def base_convert(n,p): rep = [] while n>0: rep.append(n%p) n /= p return rep def pad(bigger,smaller): while len(bigger) > len(smaller): smaller.append(0) return smaller def binom_mod(n,k,p): inverse = lambda x: pow(x,p-2,p) factorialp = lambda n: pro(xrange(1,n+1),p) def binom_mod_helper(a,b): if a<b: return 0 else: return (factorialp(a)*inverse(factorialp(b))*inverse(factorialp(a-b)))%p n_expansion = base_convert(n,p) k_expansion = pad(n_expansion,base_convert(k,p)) return pro(map(binom_mod_helper,n_expansion,k_expansion),p) T = int(raw_input()) for caseno in xrange(T): N,K = map(int, raw_input().split()) print binom_mod(N-K+1,K,100003)