import java.util.Scanner;

class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int t=sc.nextInt();
		int casos=1, a, b, n, m, cont;
		while(t!=0){
			a=sc.nextInt();
			b=sc.nextInt();
			if(a>b){
				int aux=a;
				a=b;
				b=aux;
			}
			System.out.printf("Case #%d: ",casos++);
			if(a==b){
				System.out.printf("%d\n",0);
			}else{
				cont=0;
				for(n=a;n<b;n++){					
					for(m=n+1;m<=b;m++){					
						if(isRecycled(n,m)) cont++;
					}
				}
				System.out.printf("%d\n",cont);
			}
			t--;
		}		
	}
	public static boolean isRecycled(int n1, int n2){
		String s1, s2, aux;
		s1 =  String.valueOf( n1 );
		s2 =  String.valueOf( n2 );		
		boolean r = false;		
		for(int i=0;i<s1.length();i++){
			aux="";
			aux=s1.substring(i,s1.length())+s1.substring(0,i);
//			System.out.println(aux);
			if(aux.equals(s2)){
				r=true;
				break;
			}
		}		
		return r;
	}
}

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class ProblemSample implements Problem {

    private int solution;

    private int A;

    @Override
    public void solve() {

        int resultat = 0;

        for (int n = A; n <= B; n++) {

            // on trouve toutes les rotations de n
            String stringN = Integer.toString(n);
            int size = stringN.length();

            Set<Integer> mySet = new HashSet<Integer>();

            for (int i = 0; i < size; i++) {
                String actuel = rotation(stringN, size, i);
                // le set contient les candidats mais pas les doublons
                mySet.add(Integer.parseInt(actuel));
            }

            // on vÃ©rifie si les rotations trouvÃ©es sont bonnes ou pas.
            for (Integer candidat : mySet) {
                if (candidat > n && candidat <= B) {
                    // si la solution est bonne alors on incrÃ©mente.
                    resultat++;
                }
            }
        }
        this.setSolution(resultat);
    }

    private String rotation(String stringN, int size, int nbRotation) {
        String res = stringN;
        return res.substring(size - nbRotation, size) + res.substring(0, size - nbRotation);
    }

    @Override
    public Object getSolution() {
        return solution;
    }

    public void setSolution(int solution) {
        this.solution = solution;
    }

    public int getA() {
        return A;
    }

    public void setA(int a) {
        A = a;
    }

    public int getB() {
        return B;
    }

    public void setB(int b) {
        B = b;
    }

    public List<Integer> getSums() {
        return sums;
    }

    public void setSums(List<Integer> sums) {
        this.sums = sums;
    }

    private int B;

    private List<Integer> sums = new ArrayList<Integer>();

}