#include <bits/stdc++.h>
using namespace std;
vector<long long> v[400];
long long ch[30];
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  string s;
  cin >> s;
  long long mx = 0;
  for (long long i = 0; i < s.size(); i++) {
    v[s[i]].push_back(i);
    ch[s[i] - 'a']++;
    mx = max(mx, ch[s[i] - 'a']);
  }
  for (long long i = 'a'; i <= 'z'; i++) {
    for (long long j = 'a'; j <= 'z'; j++) {
      long long cnt = 0;
      for (long long k = 0; k < v[i].size(); k++) {
        cnt += (lower_bound(v[j].begin(), v[j].end(), v[i][k]) - v[j].begin());
      }
      mx = max(mx, cnt);
    }
  }
  cout << mx;
}
