#include<bits/stdc++.h>
using namespace std;
int main(){
srand(time(0));
int a=12,c=0;
char b;
string n="";
while(!c){
b=rand()%93+33;
c=isupper(b);
}
n+=b;
c=0;
while(!c){
b=rand()%93+33;
c=islower(b);
}
n+=b;
c=0;
while(!c){
b=rand()%93+33;
c=isdigit(b);
}
n+=b;
c=1;
while(c){
b=rand()%93+33;
c=isalnum(b);
}
c=a-3;
while(c){
b=rand()%93+33;
n+=b;
c--;
}
cout<<n<<endl;
char da[100],xi[100],num[100],el[100];
int d=0,x=0,nu=0,e=0;
for(int i=0;i<a;i++){
if(isupper(n[i])){
da[d]=n[i];
d++;
}
if(islower(n[i])){
xi[x]=n[i];
x++;
}
if(isdigit(n[i])){
num[nu]=n[i];
nu++;
}
if(!isalnum(n[i])){
el[e]=n[i];
e++;
}
}
sort(da,da+d);
sort(xi,xi+x);
sort(num,num+nu);
sort(el,el+e);
for(int i=0;i<d;i++){
cout<<da[i];
}
cout<<" "<<d<<endl;
for(int i=0;i<x;i++){
cout<<xi[i];
}
cout<<" "<<x<<endl;
for(int i=0;i<nu;i++){
cout<<num[i];
}
cout<<" "<<nu<<endl;
for(int i=0;i<e;i++){
cout<<el[i];
}
cout<<" "<<e<<endl;
return 0;
}