#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>


#define MAXN 2000000

char s[MAXN];
int sd[MAXN/2];

int cmp(const int* a, const int* b)
{
  return strcmp(&s[*a],&s[*b]);
}

int main(void)
{
  int i,l;
  fgets(s,MAXN,stdin);
  l=strlen(s);
  while(l>0 && isspace(s[l-1])) l--;
  s[l]=0;
  
  for(i=0;i<=l;i++)
    s[i+l]=s[i];
  
  for(i=0;i<l;i++)
    sd[i]=i;
  
  qsort(sd, l, sizeof(int), (int (*) (const void*, const void*)) cmp);
  
  for(i=0;i<l;i++)
    printf("%c",s[sd[i]+l-1]);
    
  return 0;
}
