using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TheLovers
{
    internal class Program
    {
        private const long PrimeNumber = 100003;

     //  private static void Main(string[] args)
     //  {
     //      for (int i = 0; i < 1000; i++)
     //      {
     //          for (int j = 0; j < 1000; j++)
     //          {
     //              Combinations(i, j);
     //          }
     //      }
     //  }

        private static void Main(string[] args)
        {
            int t = int.Parse(Console.ReadLine());
            for (int i = 0; i < t; i++)
            {
                HandleTestCase();
            }
        }

        private static void HandleTestCase()
        {
            string[] nkSplit = Console.ReadLine().Split(' ');
            long n = long.Parse(nkSplit[0]);
            long k = long.Parse(nkSplit[1]);

            Console.WriteLine(Combinations((n - k + 1), k));
        }

        private static long Degree(long n)
        {
            long degree = 0;
            long u = PrimeNumber;
            while (u <= n)
            {
                degree += n/u;
                u *= PrimeNumber;
            }
            return degree;
        }

        private static long Combinations(long n, long k)
        {
            if (k > n || k < 0)
            {
                return 0;
            }
            
            if (n < k)
            {
                return 0;
            }

            if (0 == n)
            {
                return 0;
            }

            if (0 == k)
            {
                return 1;
            }

            if (n == k)
            {
                return 1;
            }

            if (1 == k)
            {
                return n%PrimeNumber;
            }

            if (n > PrimeNumber || k > PrimeNumber)
            {
                long nd = n/PrimeNumber;
                long nr = n%PrimeNumber;

                long kd = k/PrimeNumber;
                long kr = k%PrimeNumber;

                return ((Combinations(nd, kd)*Combinations(nr, kr))%PrimeNumber);
            }

            long numDegree = Degree(n) - Degree(n - k);
            long denDegree = Degree(k);
            if (numDegree > denDegree)
            {
                return 0;
            }

            long res = 1;
            for (long i = n; i > n - k; --i)
            {
                long ti = i;
                while (ti%PrimeNumber == 0)
                {
                    ti /= PrimeNumber;
                }
                res = (res*ti)%PrimeNumber;
            }

            long denom = 1;
            for (long i = 1; i <= k; ++i)
            {
                long ti = i;
                while(ti % PrimeNumber == 0) 
                {
                    ti /= PrimeNumber;
                }
                denom = (denom * ti)%PrimeNumber;
            }
            res = (res * Power(denom, PrimeNumber-2)) % PrimeNumber;

            return res;
        }

        private static long Power(long n, long k)
        {
            long res = 1;
            long cur = n;

            while (k > 0) 
            {
                if (k%2 != 0)
                {
                    res = (res*cur)%PrimeNumber;
                }
                k /= 2;
                cur = (cur * cur) % PrimeNumber;
            }
            return res;
        }
    }
}