#include <iostream>
#include <cstdio>
#include <vector>
#include <cstring>
using namespace std;
char str[200005];
vector<long>glo_Pos;
int main()
{
int t;
long output,i,n,j;
scanf("%d",&t);
while(t --)
{
output = 0;
glo_Pos.clear();
scanf("%ld %s", &n, str);
for(i = 0; i < n; i ++)
{
if(str[i] == str[0])
{
glo_Pos.push_back(i);
output ++;
}
}
output = output % 10007;
for(i = 1; i < n; i ++)
{
for(j = 0; j < glo_Pos.size();j ++)
{
if(str[i] == str[glo_Pos[j] + i])
output = (output + 1) % 10007;
else
{
glo_Pos.erase(glo_Pos.begin() + j);
j --;
}
}
}
printf("%ld\n", output);
}
return 0;
}