import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Scanner;
import java.util.Set;
import java.lang.Object;

public class Fine {
	 public static BigInteger factorial(long n) {
	       BigInteger fact = new BigInteger("1");
	       for (long i = 1; i <= n; i++) {
	           fact = fact.multiply(new BigInteger(i + ""));
	       }
	       return fact;
	   }

    public static void main(String[] args) {
       ArrayList<Integer> mylist = new ArrayList<Integer>();
       ArrayList<Integer> newlist = new ArrayList<Integer>();
        Scanner in = new Scanner (System.in);
        int T=in.nextInt();
        for(int i=0;i<T;i++){
     long a=in.nextLong();
     long b=in.nextLong();
     BigInteger m=new BigInteger("100003");
     BigInteger c= factorial(a).divide(factorial(b).multiply(factorial(a-b)));
    BigInteger d=(factorial(a-1).divide(factorial(b-1).multiply(factorial(a-b)))).multiply(new BigInteger("2"));
     BigInteger e=(c.subtract((d.subtract((factorial(a-b+1).divide(factorial(a-b))))))).mod(m);
     if(c.intValue()<0){
    System.out.println(0);
     }
     else{
    	    System.out.println(e);
    	     }
        }
    }
}