import java.util.*;

public class Euler336 {

    static String reverseSuffix(String s, int idx) {
        StringBuilder sb = new StringBuilder(s.substring(0, idx));
        StringBuilder reversed = new StringBuilder(s.substring(idx)).reverse();
        return sb.append(reversed).toString();
    }

    static List<String> generateMaximixArrangements(int n) {
        StringBuilder startBuilder = new StringBuilder();
        for (int i = 0; i < n; i++) {
            startBuilder.append((char) ('A' + i));
        }
        String start = startBuilder.toString();

        List<String> states = new ArrayList<>();
        states.add(start);

        List<String> tempStates = new ArrayList<>();
        for (String s : states) {
            tempStates.add(reverseSuffix(s, n - 2));
        }
        states = tempStates;

        for (int i = n - 3; i >= 0; i--) {
            List<String> next = new ArrayList<>();
            for (String after : states) {
                String after_ri = reverseSuffix(after, i);
                for (int p = i + 1; p <= n - 2; p++) {
                    String before = reverseSuffix(after_ri, p);
                    next.add(before);
                }
            }
            states = next;
        }

        Collections.sort(states);
        return states;
    }

    public static String solve() {
        List<String> mm11 = generateMaximixArrangements(11);
        if (mm11.size() > 2010) {
            return mm11.get(2010);
        }
        return "";
    }

    public static void main(String[] args) {
        System.out.println(solve());
    }
}
