#include <bits/stdc++.h>
using namespace std;
int main() {
  string S;
  cin >> S;
  int N = S.size();
  vector<int> v(N);
  for (int i = 0; i < N; i++) {
    v[i] = 1 << (int)(S[i] - 'a');
  }
  for (int i = 1; i < N; i++) {
    v[i] ^= v[i - 1];
  }
  vector<int> pos(1 << 26, -1);
  vector<int> dp1(N + 1), dp2(N + 1), res(N + 1);
  pos[0] = 0;
  for (int i = 0; i < N; i++) {
    if (pos[v[i]] == -1) {
      dp1[i + 1] = 0;
      pos[v[i]] = i + 1;
    } else {
      dp1[i + 1] = i + 1 - pos[v[i]];
    }
  }
  for (int i = 1; i <= N; i++) {
    dp2[i] = i - dp1[i] - 1 >= 0 ? dp1[i - dp1[i] - 1] + dp1[i] + 1 : i;
  }
  for (int i = 1; i <= N; i++) {
    res[i] = i - dp2[i] >= 0 ? res[i - dp2[i]] + 1 : 1;
  }
  cout << res[N] << endl;
  return 0;
}
