#include <bits/stdc++.h>
using namespace std;
const long long BINF = 9e8, LINF = 2e9, mod = 1e9 + 7, P = 179, Q = 1791791791;
const long long MAXN = 1e6;
long long a[MAXN];
long long pr[MAXN];
void solve() {
  long long n;
  cin >> n;
  long long last = -1;
  vector<long long> cnt;
  for (long long i = 0; i < n; ++i) {
    cin >> a[i];
    if (last == a[i])
      ++cnt.back();
    else
      cnt.push_back(1), last = a[i];
  }
  if (cnt.size() < 3) {
    cout << "0 0 0\n";
    return;
  }
  long long g = cnt[0], s = 0, b = 0;
  long long ptr = 1;
  while (ptr < cnt.size() && s <= g) s += cnt[ptr++];
  while (ptr < cnt.size() && 2 * (g + s + b + cnt[ptr]) <= n) b += cnt[ptr++];
  if ((g + s + b) * 2 <= n && g && s && b && g < s && g < b)
    cout << g << " " << s << " " << b << "\n";
  else
    cout << "0 0 0\n";
  return;
}
signed main() {
  ios_base::sync_with_stdio(false);
  long long t;
  cin >> t;
  for (long long i = 0; i < t; ++i) solve();
  return 0;
}
