#include <bits/stdc++.h>
using namespace std;
void printVec(vector<char> fv){
cout << "size = " << fv.size() << endl;
for(int i=0;i<fv.size();i++){
cout << fv[i];
}
cout << endl;
}
int main() {
int t;
cin >> t;
for(int i=0;i<t;i++){
string s;
cin >> s;
int sz = s.size();
if(sz == 1){
cout << "0\n";
}else if(sz == 2 || sz == 3){
cout << "1\n";
}
int red = sz/2;
char arr[sz];
for(int j=0;j<sz;j++){
arr[j] = s[j];
}
for(int j=0;j<sz-1;j++){
for(int k=0;k<sz-1-j;k++){
if(arr[k] > arr[k+1])
swap(arr[k],arr[k+1]);
}
}
vector<char> v((sz+1));
for(int j=0;j<sz+1;j++){
if(j==0)
v.push_back('0');
if(j == 1 || arr[j] != arr[j-1] || (arr[j] == arr[j-1] && arr[j] != arr[j-2]))
v.push_back(arr[j]);
}
printVec(v);
cout << v.size()/2 << endl;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2b2lkIHByaW50VmVjKHZlY3RvcjxjaGFyPiBmdil7Cgljb3V0IDw8ICJzaXplID0gIiA8PCBmdi5zaXplKCkgPDwgZW5kbDsKCWZvcihpbnQgaT0wO2k8ZnYuc2l6ZSgpO2krKyl7CgkJY291dCA8PCBmdltpXTsKCX0KCWNvdXQgPDwgZW5kbDsKfQppbnQgbWFpbigpIHsKCWludCB0OwoJY2luID4+IHQ7Cglmb3IoaW50IGk9MDtpPHQ7aSsrKXsKCQlzdHJpbmcgczsKCQljaW4gPj4gczsKCQlpbnQgc3ogPSBzLnNpemUoKTsKCQlpZihzeiA9PSAxKXsKCQkJY291dCA8PCAiMFxuIjsKCQl9ZWxzZSBpZihzeiA9PSAyIHx8IHN6ID09IDMpewoJCQljb3V0IDw8ICIxXG4iOwoJCX0KCQlpbnQgcmVkID0gc3ovMjsKCQljaGFyIGFycltzel07CgkJZm9yKGludCBqPTA7ajxzejtqKyspewoJCQlhcnJbal0gPSBzW2pdOwoJCX0KCQlmb3IoaW50IGo9MDtqPHN6LTE7aisrKXsKCQkJZm9yKGludCBrPTA7azxzei0xLWo7aysrKXsKCQkJCWlmKGFycltrXSA+IGFycltrKzFdKQoJCQkJCXN3YXAoYXJyW2tdLGFycltrKzFdKTsKCQkJfQoJCX0KCQl2ZWN0b3I8Y2hhcj4gdigoc3orMSkpOwoJCWZvcihpbnQgaj0wO2o8c3orMTtqKyspewoJCQlpZihqPT0wKQoJCQkJdi5wdXNoX2JhY2soJzAnKTsKCQkJaWYoaiA9PSAxIHx8IGFycltqXSAhPSBhcnJbai0xXSB8fCAoYXJyW2pdID09IGFycltqLTFdICYmIGFycltqXSAhPSBhcnJbai0yXSkpCgkJCQl2LnB1c2hfYmFjayhhcnJbal0pOwoJCX0KCQlwcmludFZlYyh2KTsKCQljb3V0IDw8IHYuc2l6ZSgpLzIgPDwgZW5kbDsKCQkKCX0KCXJldHVybiAwOwp9Cg==