#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)