#include <cctype>
#include <iostream>
#include <vector>
using namespace std;
string String_Sorting(string str) {
int len = str.size(); //获取字符串长度
vector<vector<char>> vecs(26);
for(char& c : str){
if(c >= 'a' && c <= 'z'){
vecs[c-'a'].push_back(c);
}
else if(c >= 'A' && c <= 'Z'){
vecs[c-'A'].push_back(c);
}
}
int i = 0, j=0;
for(char& c : str){
if(isalpha(c)){
for(auto& vec : vecs){
if(!vec.empty()){
c = vec[0];
vec.erase(vec.begin());
break;
}
}
}
}
return str;
}
//主函数
int main() {
string str;
while (getline(cin, str)) {
cout << String_Sorting(str) << endl;
}
return 0;
}