package ch3.uva1368;
import java.util.*;
//UVa1368
class Main {
public static char[] gene={'A','C','G','T'};
public static void print(int[][] arr){
for(int i=0;i<arr.length;i++){
for(int j=0;j<arr[i].length;j++){
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
public static void main(String[] args) {
int T, m, n;
Scanner cin = new Scanner(System.in);
T = cin.nextInt();
while (T-- > 0) {
m = cin.nextInt();//行
n = cin.nextInt();//字串长
cin.nextLine();//
//System.out.println("m="+m+" n="+n);
int[][] arr=new int[4][n];//A,C,G,T
int[] count=new int[n];//存值
while(m-->0){
String line=cin.nextLine();
//System.out.println(line);
for(int i=0;i<line.length();i++){
char c=line.charAt(i);
if(c=='A'){
arr[0][i]+=1;
}else if(c=='C'){
arr[1][i]+=1;
}else if(c=='G'){
arr[2][i]+=1;
}else{
arr[3][i]+=1;
}
}
}
//print(arr);
int sum=0;
for(int i=0;i<n;i++){
int max=-1;
int index=0;
for(int j=0;j<4;j++){
if(max<arr[j][i]&&arr[j][i]!=0){
max=arr[j][i];
index=j;
}
}
for(int k=0;k<4;k++){
if(k!=index&&arr[k][i]!=0){
count[i]=count[i]+arr[k][i];
}
}
System.out.print(gene[index]);
sum=sum+count[i];
}
System.out.println("");
System.out.println(sum);
}
}
}
/*
3
5 8
TATGATAC
TAAGCTAC
AAAGATCC
TGAGATAC
TAAGATGT
4 10
ACGTACGTAC
CCGTACGTAG
GCGTACGTAT
TCGTACGTAA
6 10
ATGTTACCAT
AAGTTACGAT
AACAAAGCAA
AAGTTACCTT
AAGTTACCAA
TACTTACCAA
Sample Output
TAAGATAC
7
ACGTACGTAA
6
AAGTTACCAA
12
*/