#include<iostream>
#include<algorithm>
#include<vector>
#include<string>
#include<set>
using namespace std;
struct zf
{
int cishu;
char c;
};
bool compare(zf x,zf y)
{
if(x.cishu==y.cishu)
{
return x.c<y.c;
}
else{
return x.cishu>y.cishu;
}
}
zf arr[1000];
int main()
{
string s;
cin>>s;
int ii=0;
for(int i=0;i<s.size();i++)
{
if(s[i]=='*') continue;
int count=1;
for(int j=i+1;j<s.size();j++)
{
if(s[i]==s[j])
{
count++;
s[j]='*';
}
}
arr[ii].cishu=count;
arr[ii].c=s[i];
ii++;
}
sort(arr,arr+ii,compare);
for(int h=0;h<ii;h++)
{
cout<<arr[h].c;
}
return 0;
}