#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;
}