#include <iostream>
#include <string>
#include <vector>
using namespace std;
bool IsVocal(char c)
{
return c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u';
}
int maxCnt = 3;
int main()
{
vector<pair<string, bool>> res;
string s = "";
while (true)
{
string tmp = "";
bool hasVocal = false, flag = false, fail = false;;
cin >> s;
if(s == "end")
break;
for (int i = 0; i < s.size() + 1; i++)
{
char cur = i < s.size() ? s[i] : ' ';
// 1. 모음(a,e,i,o,u) 하나를 반드시 포함하여야 한다.
if (!hasVocal)
hasVocal = IsVocal(cur);
// 2. 모음이 3개 혹은 자음이 3개 연속으로 오면 안 된다.
if (tmp.size() == maxCnt)
{
int vocalCnt = 0, consonantCnt = 0;
for (int j = 0; j < maxCnt; j++)
{
char c = tmp[j];
vocalCnt += IsVocal(c);
consonantCnt += !IsVocal(c);
}
if (vocalCnt == maxCnt ||
consonantCnt == maxCnt)
{
flag = fail = true;
break;
}
// 제거 후 그전꺼와 그전전꺼 포함
tmp.clear();
tmp += s[i - 2]; tmp += s[i - 1];
}
tmp += cur;
// 3. 같은 글자가 연속적으로 두번 오면 안되나, ee 와 oo는 허용한다.
if (i > 0 &&
cur != ' ')
{
char past = s[i - 1];
if (past == cur &&
past != 'e' &&
past != 'o')
{
flag = fail = true;
break;
}
}
}
if (!flag)
{
if (hasVocal)
flag = true;
}
else
flag = !fail;
res.push_back({s, flag});
}
// 출력 부분
for (int i = 0; i < res.size(); i++)
{
if (!res[i].second)
cout << '<' + res[i].first + "> is not acceptable." << endl;
else
cout << '<' + res[i].first + "> is acceptable." << endl;
}
}