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.util.*;

/**
 *
 * @author Jhon
 */
public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner cin = new Scanner(System.in);

        List<Integer> integers = new ArrayList<>();
        int a = Integer.parseInt(cin.nextLine());
        int[] begin = new int[a];
        int[] end = new int[a];

        int value, value2, count;
        boolean aux;
        String number;
        for (int i = 0; i < a; i++) {
            integers.clear();
            count = 0;
            begin[i] = cin.nextInt();
            end[i] = cin.nextInt();
            for (int j = begin[i]; j <= end[i]; j++) {



                if (j >= 10) {
                    if (j < 100) {
                        number = j + "";
                        value = Integer.parseInt(number.charAt(1) + "" + number.charAt(0));
                        aux = true;
                        for (Integer ii : integers) {
                            if (ii.intValue() == value) {
                                aux = false;
                                break;
                            }
                        }
                        if (aux && value != j && number.charAt(1) != '0' && begin[i] <= value && value <= end[i]) {
                            integers.add(j);
                            count++;
                        }
                    } else if (j <= 1000) {
                        number = j + "";
                        value = Integer.parseInt(number.charAt(2) + "" + number.charAt(0) + "" + number.charAt(1));
                        value2 = Integer.parseInt(number.charAt(1) + "" + number.charAt(2) + "" + number.charAt(0));
                        aux = true;
                        for (Integer ii : integers) {
                            if (ii.intValue() == value) {
                                aux = false;
                                break;
                            }
                        }
                            
                        if (aux && value != j && 100 <= value && begin[i] <= value && value <= end[i]) {
                            integers.add(j);
                           count++;
                        }
                          
                        aux = true;
                        for (Integer ii : integers) {
                            if (ii.intValue() == value2) {
                                aux = false;
                                break;
                            }
                        }
                        if (aux && value2 != j && 100 <= value2 && begin[i] <= value2 && value2 <= end[i]) {
                            integers.add(j);
                            count++;
                        }
                    }

                }
            }


            System.out.println("Case #"+(i+1)+":"+count);
        }




    }
}