#include using namespace std; int n,m; char input[25][55]; char output[25][55]; bool boo[55]; int ans[55]; bool check(int x,int y) { for (int i=1;i<=n;i++) { if (input[i][x]!=output[i][y]) return false; } return true; } void solve() { scanf("%d %d\n",&n,&m); for (int i=1;i<=n;i++) { scanf("%s",input[i]+1); scanf("%s",output[i]+1); } memset(boo,false,sizeof(boo)); bool gg=false; for (int i=1;i<=m;i++) { bool have_ans=false; for (int j=1;j<=m;j++) if (boo[j]==false) { if (check(i,j)) { have_ans=true; ans[i]=j; boo[j]=true; break; } } if (have_ans==false) { gg=true; break; } } if (gg==true) { printf("-1\n"); } else { for (int i=1;i> T; while (T--) solve(); return 0; }