import java.util.*;
public class Main{
    public static void main(String[] arg) {
        Scanner s = new Scanner(System.in);
        while(s.hasNextLine()){
        LinkedHashMap<Integer,Character> map=new LinkedHashMap<>();
        String lineStr=s.nextLine();
        StringBuilder lineTemp=new StringBuilder(lineStr);
        StringBuilder line = new StringBuilder();
        //仅保留字母-》排序
         for (int i = 0; i < lineStr.length(); i++) {
            if(getBoolean(lineStr.charAt(i))){
                line.append(lineStr.charAt(i));
            }
        }
        //排序-冒泡
        for (int i = 0; i < line.length(); i++) {
            for (int j = 0; j < (line.length()-1-i); j++) {
                if (String.valueOf(line.charAt(j)).toLowerCase().charAt(0)>String.valueOf(line.charAt(j+1)).toLowerCase().charAt(0)) {
                    char temp = line.charAt(j);
                    line.setCharAt(j, line.charAt(j + 1));
                    line.setCharAt(j + 1, temp);
                }
            }
        }
        //补上除字母外的值
        for(int i=0;i<lineTemp.length();i++){
            if(!getBoolean(lineTemp.charAt(i))){
                line.insert(i,lineTemp.charAt(i));
            }
        }
        //输出
        System.out.println(line.toString());
      }
    }
    private static boolean getBoolean(char c){
      return  String.valueOf(c).matches("[a-zA-Z]");
    }
}