#include <bits/stdc++.h>
using namespace std;
string str;
int b[555555];
int ch[255];
int BIT[2222222];
int BITSZ = 1;
void update(int k) {
  k = k + BITSZ - 1;
  while (k) {
    BIT[k]++;
    k /= 2;
  }
}
int get(int s, int e) {
  s = s + BITSZ - 1;
  e = e + BITSZ - 1;
  int ret = 0;
  while (s <= e) {
    if (s % 2 == 1) ret += BIT[s];
    if (e % 2 == 0) ret += BIT[e];
    s = (s + 1) / 2;
    e = (e - 1) / 2;
  }
  return ret;
}
int main() {
  cin >> str;
  ch['I'] = 1;
  ch['E'] = 1;
  ch['A'] = 1;
  ch['O'] = 1;
  ch['U'] = 1;
  ch['Y'] = 1;
  int len = str.length();
  while (len > BITSZ) BITSZ *= 2;
  for (int i = 1; i <= len; i++) {
    b[i] = ch[str[i - 1]];
    if (b[i]) {
      update(i);
    }
  }
  double sum = 0.0;
  long long int t = 0;
  int ss = 1;
  int ee = len;
  int odd = len % 2;
  int md = len / 2 + 1;
  if (odd) {
    for (int i = 1; i <= (len) / 2; i++) {
      int bb = get(ss, ee);
      t += bb;
      sum += ((double)t) / ((double)i);
      ss++;
      ee--;
    }
    int bbb = get(len / 2 + 1, len / 2 + 1);
    t += bbb;
    sum += ((double)t) / ((double)md);
    t -= bbb;
    ss--;
    ee++;
    for (int i = md + 1; i <= len; i++) {
      int bb = get(ss, ee);
      sum += ((double)t) / ((double)i);
      t -= bb;
      ss--;
      ee++;
    }
  } else {
    for (int i = 1; i <= (len) / 2; i++) {
      int bb = get(ss, ee);
      t += bb;
      sum += ((double)t) / ((double)i);
      ss++;
      ee--;
    }
    ss--;
    ee++;
    for (int i = (len) / 2 + 1; i <= len; i++) {
      int bb = get(ss, ee);
      sum += ((double)t) / ((double)i);
      t -= bb;
      ss--;
      ee++;
    }
  }
  cout << fixed;
  cout.precision(8);
  cout << sum << endl;
  return 0;
}
