#include <bits/stdc++.h>
using namespace std;
const int maxn = 2e5 + 5;
vector<int> sc[3 * maxn];
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  string s;
  cin >> s;
  int n = s.length();
  char _vowels[] = {'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'};
  set<char> vowels(_vowels, _vowels + sizeof(_vowels) / sizeof(_vowels[0]));
  int score = 0;
  bool cons = 0;
  sc[n].push_back(0);
  for (int i = 0; i < n; i++) {
    if (vowels.count(s[i]))
      score--;
    else
      score += 2, cons = 1;
    sc[score + n].push_back(i + 1);
  }
  int min_idx = n, max_len = 0, num_sub = 0;
  for (int i = 0; i <= 3 * n; i++) {
    for (int j = 0; j < sc[i].size(); j++) {
      int idx = sc[i][j];
      min_idx = min(min_idx, idx);
      int cur_len = idx - min_idx;
      if (max_len < cur_len) {
        max_len = cur_len;
        num_sub = 1;
      } else if (max_len == cur_len)
        num_sub++;
    }
  }
  if (!cons)
    cout << "No solution\n";
  else
    cout << max_len << " " << num_sub << "\n";
  return 0;
}
