package codejam;

import java.util.*;
import java.io.*;

public class RecycledNumbers {
	public static void main(String[] args) throws IOException {
		BufferedReader in = new BufferedReader(new FileReader("in.txt"));
		PrintWriter out = new PrintWriter(new File("out.txt"));
		
		int T = Integer.parseInt(in.readLine());
		for (int t = 1; t <= T; ++t) {
			String[] parts = in.readLine().split("[ ]+");
			int A = Integer.parseInt(parts[0]);
			int B = Integer.parseInt(parts[1]);
			
			int cnt = 0;
			for (int i = A; i < B; ++i) {
				String str = String.valueOf(i);
				int n = str.length();
				String res = "";
				Set<Integer> seen = new HashSet<Integer>();
				for (int j = n - 1; j > 0; --j) {
					res = str.substring(j) + str.substring(0, j);
					int k = Integer.parseInt(res);
					if (k > i && k <= B) {
						//System.out.println("(" + i + ", " + k + ")");
						if (!seen.contains(k)) {
							++cnt;
							seen.add(k);
						}
					}
				}
			}

			out.println("Case #" + t + ": " + cnt);
		}
		
		in.close();
		out.close();
		System.exit(0);
	}
}

/**
 * 
 */
package com.sathish.codejam;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

/**
 * @author satselva
 *
 */
public class Recycle
{
    public void processInput(String fileName) throws IOException
    {
        FileInputStream fis = new FileInputStream(fileName);
        BufferedReader br = new BufferedReader(new InputStreamReader(fis));
        
        PrintWriter pw = new PrintWriter(new File("C:/downloads/output_problem_3.txt"));
        String input = br.readLine();
        int testCases = Integer.valueOf(input);
        
        for(int i=1; i<=testCases; i++)
        {
            input = br.readLine();
            String[] samples = input.split(" ");
            int ans = displayRecycleNum(Integer.valueOf(samples[0]), 
                    Integer.valueOf(samples[1]), samples[0].length());
            
            pw.println(String.format("Case #%d: %d", i, ans));
        }
        
        pw.flush();
        pw.close();
        
    }
    
    public int displayRecycleNum(int min, int max, int digits)
    {
        if(digits <= 1)
            return 0;
        
        Set<String> recyclePairSet = new HashSet<String>();
        
        for(int i=min; i<=max; i++)
        {
            String input = String.valueOf(i) + String.valueOf(i);
            for(int index=1; index < digits; index++)
            {
                String num = input.substring(index, index+digits);
                
                int numVal = Integer.valueOf(num);
                
                if(!(numVal > min && numVal < max))
                    continue;
                
                if(num.startsWith("0") || i == numVal)
                    continue;
                
                if(i < Integer.valueOf(num))
                {
                    recyclePairSet.add(String.valueOf(i) + String.valueOf(num));
                }
                else 
                {
                    recyclePairSet.add(String.valueOf(num) + String.valueOf(i));
                }
            }
        }
        return recyclePairSet.size();
    }
    
    public static void main(String[] args) throws IOException
    {
        Recycle recycle = new Recycle();
        recycle.processInput("C:/downloads/C-small-attempt0.in");
        
    }
}
