#include <bits/stdc++.h>
using namespace std;
string st;
int p, c, l, ret, s[26];
bool iskaibun(int *s) {
  bool kisuu = false;
  for (int i = 0; i < (26); i++) {
    if (s[i] % 2 != 0) {
      if (kisuu) {
        return false;
      } else {
        kisuu = true;
      }
    }
  }
  return true;
}
int kaibun(int pos) {
  if (l == pos) return 0;
  int r = 1 << 20;
  for (int j = 0; j < (26); j++) {
    s[j] = 0;
  }
  for (int i = (pos); i < (l); i++) {
    s[st[i] - 'a']++;
    if (iskaibun(s)) {
      r = min(r, kaibun(i + 1) + 1);
      for (int j = 0; j < (26); j++) {
        s[j] = 0;
      }
      for (int j = (pos); j < (i + 1); j++) {
        s[st[j] - 'a']++;
      }
    }
  }
  return r;
}
int main() {
  cin >> st;
  l = st.length();
  printf("%d\n", kaibun(0));
}
