package fixjava;

public class StringUtils {

	/** Repeat the given string the requested number of times. */
	public static String repeat(String str, int numTimes) {
		StringBuilder buf = new StringBuilder(Math.max(0, str.length() * numTimes));
		for (int i = 0; i < numTimes; i++)
			buf.append(str);
		return buf.toString();
	}

	/**
	 * Pad the left hand side of a field with the given character. Always adds at least one pad character. If the length of str is
	 * greater than numPlaces-1, then the output string will be longer than numPlaces.
	 */
	public static String padLeft(String str, char padChar, int numPlaces) {
		int bufSize = Math.max(numPlaces, str.length() + 1);
		StringBuilder buf = new StringBuilder(Math.max(numPlaces, str.length() + 1));
		buf.append(padChar);
		for (int i = 1, mi = bufSize - str.length(); i < mi; i++)
			buf.append(padChar);
		buf.append(str);
		return buf.toString();
	}

	/**
	 * Pad the right hand side of a field with the given character. Always adds at least one pad character. If the length of str is
	 * greater than numPlaces-1, then the output string will be longer than numPlaces.
	 */
	public static String padRight(String str, char padChar, int numPlaces) {
		int bufSize = Math.max(numPlaces, str.length() + 1);
		StringBuilder buf = new StringBuilder(Math.max(numPlaces, str.length() + 1));
		buf.append(str);
		buf.append(padChar);
		while (buf.length() < bufSize)
			buf.append(padChar);
		return buf.toString();
	}

	/** Intern all strings in an array, skipping null elements. */
	public static String[] intern(String[] arr) {
		for (int i = 0; i < arr.length; i++)
			arr[i] = arr[i].intern();
		return arr;
	}

	/** Intern a string, ignoring null */
	public static String intern(String str) {
		return str == null ? null : str.intern();
	}

}

import java.io.*;
public class GoogleCodeJam3 
{
  public static void main(String[] args) throws IOException 
   {
        FileInputStream fstreami = new FileInputStream("input.txt");
        DataInputStream in = new DataInputStream(fstreami);
        FileWriter fstreamo = new FileWriter("output.txt");
        BufferedWriter out = new BufferedWriter(fstreamo);
        int testCases = Integer.parseInt(in.readLine());
        int i = 0;
        String [] input;
        while (i < testCases)
        {
            input = in.readLine().split(" ");
            int A = Integer.parseInt(input[0]);
            int B = Integer.parseInt(input[1]);
            int testNum = A;
            int pairs = 0;
            int len = Integer.toString(A).length();
            while(testNum <= B)
            {
				String st = Integer.toString(testNum);
				int [] testing = new int[len];
				int index = 0;
				for(int j = 0; j < len-1; j++)
				{
                    st = st.substring(len-1, len) + st.substring(0,len-1);
                    int newNum = Integer.parseInt(st);
 	//				System.out.println(newNum);
                  if ((newNum > testNum) && (newNum <= B))
                    {
                        boolean bool = false;
                        for (int k = 0; k < index; k++)
                        {
                            if (testing[k] == newNum)
                            {
	//							System.out.println("fuckfuckfuckfuckfuckfuckfuck");
                                bool = true; break;
                            }
                        }
                        if (bool == false)
                        {
                           pairs++;
                           testing[index] = newNum;
						   index++;
                        }
                    }
                }
                testNum++;
            }
            out.write("Case #" + (i+1) + ": " + pairs + "\n");
            i++;
        }
        in.close();
	out.close();
   }
}