#include <bits/stdc++.h>
using namespace std;
const int MOD = 1e9 + 7;
const int SIZE = 5e3 + 10;
char s[SIZE];
int dp[SIZE];
bool good[128];
int lt[SIZE];
void track(int id, bool ending) {
  if (id) track(lt[id], 0);
  for (int i = (lt[id] + 1); i < (id + 1); ++i) printf("%c", s[i]);
  putchar(ending ? '\n' : ' ');
}
int main() {
  good['a'] = 1;
  good['e'] = 1;
  good['i'] = 1;
  good['o'] = 1;
  good['u'] = 1;
  scanf("%s", (s + 1));
  int n = strlen(s + 1);
  memset((dp), -1, sizeof((dp)));
  dp[0] = 0;
  for (int i = (1); i < (n + 1); ++i) {
    int cnt = 0;
    set<char> dif;
    for (int j = i; j > 0; j--) {
      if (good[s[j]]) {
        cnt = 0;
        dif.clear();
      } else {
        dif.insert(s[j]);
        cnt++;
      }
      if (cnt > 2 && ((int)(dif).size()) > 1) break;
      if (dp[j - 1] != -1 && (dp[i] == -1 || dp[j - 1] + 1 < dp[i])) {
        dp[i] = dp[j - 1] + 1;
        lt[i] = j - 1;
      }
    }
  }
  track(n, 1);
  return 0;
}
