#include #define For(i,j,k) for (int i=(int)(j);i<=(int)(k);i++) #define Rep(i,j,k) for (int i=(int)(j);i>=(int)(k);i--) #define pii pair #define pll pair #define ll long long #define fi first #define se second #define PB push_back #define uint unsigned #define ull unsigned ll using namespace std; pll hsh1[55],hsh2[55]; int n,m,ans[55]; char s[55]; void solve(){ scanf("%d%d",&n,&m); For(i,1,m) hsh1[i]=hsh2[i]=pll(0,i); For(i,1,n){ scanf("%s",s+1); For(j,1,m) hsh1[j].fi=hsh1[j].fi*233+s[j]; scanf("%s",s+1); For(j,1,m) hsh2[j].fi=hsh2[j].fi*233+s[j]; } sort(hsh1+1,hsh1+m+1); sort(hsh2+1,hsh2+m+1); For(i,1,m) if (hsh1[i].fi!=hsh2[i].fi) return puts("-1"),void(0); For(i,1,m) ans[hsh1[i].se]=hsh2[i].se; For(i,1,m) printf("%d%c",ans[i],i==m?'\n':' '); } int main(){ int T; scanf("%d",&T); while (T--) solve(); }