#include "stdio.h"
#include "string"
#define M 1679616+100000
struct H{
int st;
int len;
}q[M];
int hash[M],cas =1;
int n , end ,len;
char str[8][8];
char ku[] ="ACGT";
int bfs() {
int head,tail,i,st;
int pos[8];
q[0].len =0;
q[0].st =0;
head = tail =0;
while(head <= tail) {
st = q[head].st;
for(i =0 ; i < n ; i ++) {
pos[i] = st%len;
st/=len;
}
for(int j =0 ; j <4 ; j ++) {
st =0;
for(i = n-1; i >=0 ;i --) {
st = st * len + pos[i] + (str[i][pos[i]] == ku[j]);
}
if(hash[st] == cas) {
continue;
}
if(st == end) {
return q[head].len +1;
}
hash[st] = cas;
tail ++;
q[tail].len = q[head].len +1;
q[tail].st = st;
}
head ++;
}
return-1;
}
int main() {
int T , i ;
scanf("%d",&T);
while(T --) {
scanf("%d",&n);
len =0;
for(i =0 ; i < n ; i ++) {
scanf("%s",str[i]);
if(strlen(str[i]) > len) {
len = strlen(str[i]);
}
}
len ++;
end =0;
for(i = n-1 ; i >=0 ; i --) {
end = end * len + strlen(str[i]);
}
printf("%d\n",bfs());
cas ++;
}
return 0;
}