#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 5;
char a[maxn + 5], b[maxn + 5];
struct node {
  int id, pos;
} st[maxn + 5];
bool cmp(const node a, const node b) {
  if (a.id == b.id) return a.pos < b.pos;
  return a.id > b.id;
}
int main() {
  scanf("%s", a);
  int len = strlen(a);
  for (int i = 0; i < len; i++) {
    st[i].pos = i;
    st[i].id = int(a[i] - 'a');
  }
  sort(st, st + len, cmp);
  int last = -1, d = 0;
  for (int i = 0; i < len; i++) {
    if (st[i].pos > last) {
      last = st[i].pos;
      b[d++] = char(st[i].id + 'a');
    }
  }
  b[d] = '\0';
  printf("%s", b);
}
