- #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==