#include <stdio.h>
#define BAZA 26
#define MAXN 1000000
int fr[BAZA];
char s[MAXN + 1];
int main(){
FILE *in = fopen("ordine.in", "r");
FILE *out = fopen("ordine.out", "w");
fgets(s, MAXN + 1, in);
fclose(in);
int i, dr = 0, n;
for(i = 0; s[i] != '\n'; i++)
fr[s[i] - 'a']++;
n = i;
int min, last = -1, j;
for(i = 0; s[i] != '\n'; i++){
min = 0;
while(min < BAZA && (fr[min] == 0 || last == min))
min++;
for(j = 0; j < BAZA; j++){
if(fr[j] > (n - i) / 2)
min = j;
}
fr[min]--;
last = min;
fputc('a' + min, out);
}
for(i = 0; i < BAZA; i++){
if(fr[i] != 0){
s[dr] = i + 'a';
dr++;
}
}
fclose(out);
return 0;
}