#include <bits/stdc++.h>
using namespace std;
struct node {
int p;
int q;
};
bool acomp(node lhs, node rhs) { return lhs.p > rhs.p; }
int main() {
int t; cin>>t;
while(t--){
struct node b[26];
for(int i=0;i<26;i++) b[i].p=0;
char a[100000],c[100000];
scanf("%s",a);
int x=strlen(a);
for(int i=0;a[i]!=NULL;i++) {
(b[a[i]-97].p)++;
b[a[i]-97].q=a[i]-97;
}
sort(b,b+26,acomp);
int sum=0,j=0,k=1,l=0;
for(int i=0;i<26;i++) sum+=b[i].p;
for(int i=0;i<26;i++) {
if(sum-b[i].p<b[i].p-1) {cout<<"-1\n"; l=1; break;}
else {
if(j<k) {for(int m=0;m<b[i].p;m++) {
c[j]=b[i].q;
j+=2;
}}
else {
for(int m=0;m<b[i].p;m++) {
c[k]=b[i].q;
k+=2;
}
}
}
}
if(l!=1) {
if(c[x-1]==c[x-2]) {
cout<<char(c[x-1]+97);
for(int i=0;i<x-1;i++) {
cout<<char(c[i]+97);
}
} else {
for(int i=0;i<x;i++) {
cout<<char(c[i]+97);
}
}
cout<<"\n";
}
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnN0cnVjdCBub2RlIHsKCWludCBwOwoJaW50IHE7Cn07CmJvb2wgYWNvbXAobm9kZSBsaHMsIG5vZGUgcmhzKSB7IHJldHVybiBsaHMucCA+IHJocy5wOyB9CmludCBtYWluKCkgewoJaW50IHQ7IGNpbj4+dDsKCXdoaWxlKHQtLSl7CgkJc3RydWN0IG5vZGUgYlsyNl07CgkJZm9yKGludCBpPTA7aTwyNjtpKyspIGJbaV0ucD0wOwoJCWNoYXIgYVsxMDAwMDBdLGNbMTAwMDAwXTsKCQlzY2FuZigiJXMiLGEpOwoJCWludCB4PXN0cmxlbihhKTsKCQlmb3IoaW50IGk9MDthW2ldIT1OVUxMO2krKykgewoJCQkoYlthW2ldLTk3XS5wKSsrOwoJCQliW2FbaV0tOTddLnE9YVtpXS05NzsKCQl9CgkJc29ydChiLGIrMjYsYWNvbXApOwoJCWludCBzdW09MCxqPTAsaz0xLGw9MDsKCQlmb3IoaW50IGk9MDtpPDI2O2krKykgc3VtKz1iW2ldLnA7CgkJZm9yKGludCBpPTA7aTwyNjtpKyspIHsKCQkJaWYoc3VtLWJbaV0ucDxiW2ldLnAtMSkge2NvdXQ8PCItMVxuIjsgbD0xOyBicmVhazt9CgkJCWVsc2UgewoJCQkJaWYoajxrKSB7Zm9yKGludCBtPTA7bTxiW2ldLnA7bSsrKSB7CgkJCQkJY1tqXT1iW2ldLnE7CgkJCQkJais9MjsKCQkJCX19CgkJCQllbHNlIHsKCQkJCQlmb3IoaW50IG09MDttPGJbaV0ucDttKyspIHsKCQkJCQkJY1trXT1iW2ldLnE7CgkJCQkJCWsrPTI7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoJCWlmKGwhPTEpIHsKCQkJaWYoY1t4LTFdPT1jW3gtMl0pIHsKCQkJCWNvdXQ8PGNoYXIoY1t4LTFdKzk3KTsKCQkJCWZvcihpbnQgaT0wO2k8eC0xO2krKykgewoJCQkJCWNvdXQ8PGNoYXIoY1tpXSs5Nyk7CgkJCQl9CQoJCQl9IGVsc2UgewoJCQkJZm9yKGludCBpPTA7aTx4O2krKykgewoJCQkJCWNvdXQ8PGNoYXIoY1tpXSs5Nyk7CgkJCQl9CgkJCX0KCQkJY291dDw8IlxuIjsKCQl9IAoJfQoJcmV0dXJuIDA7Cn0=