#include <bits/stdc++.h>
using namespace std;
int pocz, kon, n, med;
string s;
bool fun(int dl) {
  for (int i = 0; i < n - dl + 1; i++)
    for (int j = i + 1; j < n - dl + 1; j++) {
      bool moge = true;
      for (int k = 0; k < dl; k++)
        if (s[i + k] != s[j + k]) {
          moge = false;
          break;
        }
      if (moge) return true;
    }
  return false;
}
int main() {
  cin >> s;
  n = s.size();
  pocz = 0;
  kon = n;
  while (pocz != kon) {
    med = (pocz + kon);
    if (fun(med))
      pocz = med;
    else
      kon = med - 1;
  }
  printf("%d\n", pocz);
}
