import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.PriorityQueue;
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            String s = in.nextLine();
            char[]arr = s.toCharArray();
            HashMap<Integer, List<Integer>>map = new HashMap<>();
            for (int i = 0; i < arr.length; i++) {
                if (arr[i] >= 65 && arr[i] <= 90) {
                    int key = arr[i] - 'A';
                    if (!map.containsKey(key)) {
                        List<Integer>list = new ArrayList<>();
                        list.add(i);
                        map.put(key, list);

                    } else {
                        map.get(key).add(i);
                    }
                } else if (arr[i] >= 97 && arr[i] <= 122) {
                    int key = arr[i] - 'a';
                    if (!map.containsKey(key)) {
                        List<Integer>list = new ArrayList<>();
                        list.add(i);
                        map.put(key, list);
                    } else {
                        map.get(key).add(i);
                    }
                }
            }
            PriorityQueue<Integer>queue = new PriorityQueue<>();
            for (Integer key : map.keySet()) {

                for (int i = 0; i < map.get(key).size(); i++) {
                    queue.add(map.get(key).get(i));
                }
            }
            for (int i = 0; i < 26; i++) {
                if (map.containsKey(i)) {
                    List<Integer>list = map.get(i);
                    for (int j = 0; j < list.size(); j++) {
                        int index = queue.poll();
                        if (s.charAt(list.get(j)) >= 'a' && s.charAt(list.get(j)) <= 'z') {
                            arr[index] = (char)(i + 'a');
                        } else {
                            arr[index] = (char)(i + 'A');
                        }
                    }
                }
            }





            System.out.println(new String(arr));
        }
    }
}