#include <bits/stdc++.h>
using namespace std;
vector<string> inivector;
string init;
int main() {
  cin >> init;
  int stringend = init.size() - 1;
  for (int i = 0; i <= stringend; ++i) {
    string tmp = "";
    for (int j = i; j <= stringend; ++j) {
      tmp += init[j];
      inivector.push_back(tmp);
    }
  }
  int ans = 0;
  for (int i = 0; i < inivector.size() - 1; ++i) {
    for (int j = i + 1; j < inivector.size(); ++j) {
      if (inivector[i] == inivector[j]) {
        int leng = inivector[i].length();
        ans = max(ans, leng);
      }
    }
  }
  cout << ans << '\n';
}
