#include <bits/stdc++.h>
using namespace std;
int main() {
  string j, p;
  cin >> j;
  int best = 0, i, k, g, a;
  for (i = 0; i < j.length() - 1; i++) {
    for (k = 1; k < j.length() - i; k++) {
      p = j.substr(i, k);
      a = 0;
      for (g = 0; g < j.length() - p.length() + 1; g++) {
        if (j.substr(g, p.length()) == p) a++;
      }
      if (a > 1 && p.length() > best) best = p.length();
    }
  }
  cout << best << endl;
  return 0;
}
