#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e6 + 20;
char s[maxn];
int nxt[maxn], cnt[maxn];
void GetNextval(char* p, int nxt[]) {
  int pLen = strlen(p);
  nxt[0] = -1;
  int k = -1;
  int j = 0;
  while (j != pLen) {
    if (k == -1 || p[j] == p[k]) {
      ++j;
      ++k;
      nxt[j] = k;
    } else {
      k = nxt[k];
    }
  }
}
int main() {
  scanf("%s", s);
  GetNextval(s, nxt);
  int l = strlen(s);
  for (int i = 1; i <= l; i++) {
    cnt[nxt[i]]++;
    ;
  }
  if (cnt[nxt[l]] >= 2 && nxt[l] != 0) {
    for (int i = 0; i < nxt[l]; i++) {
      printf("%c", s[i]);
    }
  } else if (nxt[nxt[l]] != 0 && nxt[nxt[l]] != -1) {
    for (int i = 0; i < nxt[nxt[l]]; i++) {
      printf("%c", s[i]);
    }
  } else {
    printf("Just a legend");
  }
  return 0;
}
