#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define int long long int
#define ld long double
#define all(x) x.begin(), x.end()
#define sortall(x) sort(all(x))
#define endl '\n'
#define yes cout<<"YES\n";
#define no cout<<"NO\n";
#define fast ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
template<class T>
void printC (T Collection)
{
for (auto&i:Collection)
cout << i << " ";
}
/*
* Think twice, code once
* Think of different approaches to tackle a problem: write them down.
* Think of different views of the problem. don't look from only one side.
* don't get stuck in one approach.
* common mistakes: - over_flow
* - out_of_bound index
* - infinite loop
* - corner cases
* - duplication counting.
*/
void solve()
{
int n; cin >> n;
int cnt = 0;
vector<int> ans;
for (int i = 1; i <= n; ++i)
{
char c; cin >> c;
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')
{
cnt++;
ans.push_back(i);
}
}
cout << cnt << '\n';
printC(ans);
}
int32_t main()
{
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
freopen("Errors.txt", "w", stderr);
#endif
fast
int t = 1;
cin >> t;
while (t--)
{
solve();
if (t) cout << '\n';
}
cout << '\n';
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgaW50IGxvbmcgbG9uZyBpbnQKI2RlZmluZSBsZCBsb25nIGRvdWJsZQojZGVmaW5lIGFsbCh4KSB4LmJlZ2luKCksIHguZW5kKCkKI2RlZmluZSBzb3J0YWxsKHgpIHNvcnQoYWxsKHgpKQojZGVmaW5lIGVuZGwgJ1xuJwojZGVmaW5lIHllcyBjb3V0PDwiWUVTXG4iOwojZGVmaW5lIG5vIGNvdXQ8PCJOT1xuIjsKI2RlZmluZSBmYXN0IGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7Y2luLnRpZSgwKTtjb3V0LnRpZSgwKTsKdGVtcGxhdGU8Y2xhc3MgVD4Kdm9pZCBwcmludEMgKFQgQ29sbGVjdGlvbikKewogICAgZm9yIChhdXRvJmk6Q29sbGVjdGlvbikKICAgICAgICBjb3V0IDw8IGkgPDwgIiAiOwp9CgovKgogKiBUaGluayB0d2ljZSwgY29kZSBvbmNlCiAqIFRoaW5rIG9mIGRpZmZlcmVudCBhcHByb2FjaGVzIHRvIHRhY2tsZSBhIHByb2JsZW06IHdyaXRlIHRoZW0gZG93bi4KICogVGhpbmsgb2YgZGlmZmVyZW50IHZpZXdzIG9mIHRoZSBwcm9ibGVtLiBkb24ndCBsb29rIGZyb20gb25seSBvbmUgc2lkZS4KICogZG9uJ3QgZ2V0IHN0dWNrIGluIG9uZSBhcHByb2FjaC4KICogY29tbW9uIG1pc3Rha2VzOiAtIG92ZXJfZmxvdwogKiAgICAgICAgICAgICAgICAgIC0gb3V0X29mX2JvdW5kIGluZGV4CiAqICAgICAgICAgICAgICAgICAgLSBpbmZpbml0ZSBsb29wCiAqICAgICAgICAgICAgICAgICAgLSBjb3JuZXIgY2FzZXMKICogICAgICAgICAgICAgICAgICAtIGR1cGxpY2F0aW9uIGNvdW50aW5nLgoqLwoKdm9pZCBzb2x2ZSgpCnsKICAgIGludCBuOyBjaW4gPj4gbjsKICAgIGludCBjbnQgPSAwOwogICAgdmVjdG9yPGludD4gYW5zOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgKytpKQogICAgewogICAgICAgIGNoYXIgYzsgY2luID4+IGM7CiAgICAgICAgaWYgKGMgPT0gJ2EnIHx8IGMgPT0gJ2UnIHx8IGMgPT0gJ2knIHx8IGMgPT0gJ28nIHx8IGMgPT0gJ3UnKQogICAgICAgIHsKICAgICAgICAgICAgY250Kys7CiAgICAgICAgICAgIGFucy5wdXNoX2JhY2soaSk7CiAgICAgICAgfQogICAgfQogICAgY291dCA8PCBjbnQgPDwgJ1xuJzsKICAgIHByaW50QyhhbnMpOwp9CgppbnQzMl90IG1haW4oKQp7CiNpZm5kZWYgT05MSU5FX0pVREdFCiAgICBmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKICAgIGZyZW9wZW4oIm91dHB1dC50eHQiLCAidyIsIHN0ZG91dCk7CiAgICBmcmVvcGVuKCJFcnJvcnMudHh0IiwgInciLCBzdGRlcnIpOwojZW5kaWYKICAgIGZhc3QKICAgIGludCB0ID0gMTsKICAgIGNpbiA+PiB0OwogICAgd2hpbGUgKHQtLSkKICAgIHsKICAgICAgICBzb2x2ZSgpOwogICAgICAgIGlmICh0KSBjb3V0IDw8ICdcbic7CiAgICB9CiAgICBjb3V0IDw8ICdcbic7CiAgICByZXR1cm4gMDsKfQ==