#include <bits/stdc++.h>
using namespace std;
bool cmp(char a,char b)
{
//大写化为小写,再比较,满足题目所要求的不区分大小写
if(a>='A'&&a<='Z') a=a-'A'+'a';
if(b>='A'&&b<='Z') b=b-'A'+'a';
return a<b;
}
bool isWord(char a)
{
if((a>='a'&&a<='z')||(a>='A'&&a<='Z')) return true;
else return false;
}
int main(){
string s;
while(getline(cin,s))
{
string t;
for(int i=0;i<s.size();i++)
{
if(isWord(s[i]))//是英文字母
{
t+=s[i];
}
}
stable_sort(t.begin(),t.end(),cmp);//要求稳定排序
for(int i=0;i<s.size();i++)
{
if(!isWord(s[i]))
{
t.insert(t.begin()+i,s[i]);
}
}
cout<<t<<endl;
}
return 0;
}