package jp.funnything.competition.util;

import java.math.BigInteger;

/**
 * Utility for BigInteger
 */
public class BI {
    public static BigInteger ZERO = BigInteger.ZERO;
    public static BigInteger ONE = BigInteger.ONE;

    public static BigInteger add( final BigInteger x , final BigInteger y ) {
        return x.add( y );
    }

    public static BigInteger add( final BigInteger x , final long y ) {
        return add( x , v( y ) );
    }

    public static BigInteger add( final long x , final BigInteger y ) {
        return add( v( x ) , y );
    }

    public static int cmp( final BigInteger x , final BigInteger y ) {
        return x.compareTo( y );
    }

    public static int cmp( final BigInteger x , final long y ) {
        return cmp( x , v( y ) );
    }

    public static int cmp( final long x , final BigInteger y ) {
        return cmp( v( x ) , y );
    }

    public static BigInteger div( final BigInteger x , final BigInteger y ) {
        return x.divide( y );
    }

    public static BigInteger div( final BigInteger x , final long y ) {
        return div( x , v( y ) );
    }

    public static BigInteger div( final long x , final BigInteger y ) {
        return div( v( x ) , y );
    }

    public static BigInteger mod( final BigInteger x , final BigInteger y ) {
        return x.mod( y );
    }

    public static BigInteger mod( final BigInteger x , final long y ) {
        return mod( x , v( y ) );
    }

    public static BigInteger mod( final long x , final BigInteger y ) {
        return mod( v( x ) , y );
    }

    public static BigInteger mul( final BigInteger x , final BigInteger y ) {
        return x.multiply( y );
    }

    public static BigInteger mul( final BigInteger x , final long y ) {
        return mul( x , v( y ) );
    }

    public static BigInteger mul( final long x , final BigInteger y ) {
        return mul( v( x ) , y );
    }

    public static BigInteger sub( final BigInteger x , final BigInteger y ) {
        return x.subtract( y );
    }

    public static BigInteger sub( final BigInteger x , final long y ) {
        return sub( x , v( y ) );
    }

    public static BigInteger sub( final long x , final BigInteger y ) {
        return sub( v( x ) , y );
    }

    public static BigInteger v( final long value ) {
        return BigInteger.valueOf( value );
    }
}

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.util.Scanner;


public class C {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws Exception {
		PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("c.txt")));
//		Scanner s = new Scanner(System.in);
		Scanner s = new Scanner(new File("c.in"));
//		BufferedReader in = new BufferedReader(new FileReader(new File("a-small.in")));
		int n = s.nextInt();
		for(int t=1;t<=n;t++){
			int a = s.nextInt(), b = s.nextInt();
			System.out.println("Case #"+t+": "+go(a,b));
			pw.println("Case #"+t+": "+go(a,b));
			pw.flush();
		}
	}
	static int go(int a,int b){
		int r = 0;
		for(int n=a;n<b;n++){
			for(int m=n+1;m<=b;m++){
				if(n<m){
					if(ok(n,m)) ++r;
				}
			}
		}
		return r;
	}
	static boolean ok(int a,int b){
		String aa = a+"", bb = b+"";
		if(aa.length() != bb.length()) return false;
		for(int i=0;i<aa.length();i++){
			if((aa.substring(i) + aa.substring(0,i)).equals(bb)) return true;
			
		}
		return false;
	}
}
