#include <iostream>
using namespace std;
const int MAXN = 1000005;
char Str[MAXN];
int Next[MAXN];
int n;
void KMP()
{
int i = -1, j = 0;
Next[0] = -1;
while (j < n)
{
if (i == -1 || Str[i] == Str[j])
{
i++;
j++;
Next[j] = i;
if (j % (j - i) == 0 && i != 0)
{
cout << j << " " << j / (j - i) << endl;
}
}
else
i = Next[i];
}
}
int main()
{
int Case = 1;
while (cin >> n)
{
if (n == 0)
break;
cin >> Str;
cout << "Test case #" << Case++ << endl;
KMP();
cout << endl;
}
return 0;
}