import java.util.*;
import java.lang.*;
import java.math.*;
import java.io.*;

import static java.lang.Math.*;
import static java.util.Arrays.*;
import static java.util.Collections.*;

public class C{
	Scanner sc=new Scanner(System.in);

	int INF=1<<28;
	double EPS=1e-9;

	int caze, T;
	int A, B;

	void run(){
		T=sc.nextInt();
		for(caze=1; caze<=T; caze++){
			A=sc.nextInt();
			B=sc.nextInt();
			solve();
		}
	}

	void solve(){
		int ans=0;
		for(int n=A; n<=B; n++){
			int digit=(int)(log10(n)+EPS);
			int d=(int)pow(10, digit);
			// debug("n", n);
			for(int m=rot(n, d); m!=n; m=rot(m, d)){
				// debug("m", m);
				if(n<m&&m<=B){
					ans++;
				}
			}
		}
		answer(ans+"");
	}

	int rot(int n, int d){
		return n/10+n%10*d;
	}

	void answer(String s){
		println("Case #"+caze+": "+s);
	}

	void println(String s){
		System.out.println(s);
	}

	void print(String s){
		System.out.print(s);
	}

	void debug(Object... os){
		System.err.println(deepToString(os));
	}

	public static void main(String[] args){
		try{
			System.setIn(new FileInputStream("dat/C-small.in"));
			System.setOut(new PrintStream(new FileOutputStream("dat/C-small.out")));
		}catch(Exception e){}
		new C().run();
		System.out.flush();
		System.out.close();
	}
}

import java.io.*;

public class recycled {

	/**
	 * @param args
	 */
    public static int solve(BufferedReader reader) throws IOException {
    	
		int cpt = 0;
		
		String[] entiers = new String[2];
		
		entiers = reader.readLine().split(" ");
 		
		if(Integer.parseInt(entiers[0]) < 10) return 0;
		else {
			for(int i = Integer.parseInt(entiers[0]); i <= Integer.parseInt(entiers[1]); i++)
				cpt += NombreRecycle(entiers[0], entiers[1], Integer.toString(i));
		}
		
		return cpt;
    }
    
    public static int NombreRecycle(String a, String b, String n) throws IOException {
    	
    	int cpt = 0;
    	
    	for(int i = 1; i < n.length() ; i++)
    		if( Integer.parseInt(n) < Integer.parseInt(n.substring(i) + n.substring(0, i)) && Integer.parseInt(n.substring(i) + n.substring(0, i)) <= Integer.parseInt(b)) cpt++;
    	
    	return cpt;
    }
    
    
    public static void main(String[] args) {

    	
		try {
			InputStream ips = new FileInputStream("recycled.in"); 
			InputStreamReader ipsr = new InputStreamReader(ips);
			BufferedReader br = new BufferedReader(ipsr);
			
			int cases = Integer.valueOf(br.readLine());
			
			for (int i = 1; i <= cases; i++) {
				imprimer(i, solve(br));
			}
		} catch (IOException x) {
			System.err.println(x);
		} catch (NumberFormatException x) {
			System.err.println(x);
		}
    }

    static void imprimer(int numero, int resultat) {
		
		try {
			FileWriter fw = new FileWriter ("recycled.out",true);
			BufferedWriter bw = new BufferedWriter (fw);
			PrintWriter fichierSortie = new PrintWriter (bw); 
				fichierSortie.println ("Case #" + numero + ": " + resultat); 
			fichierSortie.close();
		}
		catch (Exception e){
			System.out.println(e.toString());
		}
		
	}
}
