#include <bits/stdc++.h>
using namespace std;
int main() {
  int t;
  cin >> t;
  int n;
  vector<long long> groups, p;
  while (t--) {
    cin >> n;
    p.resize(n);
    for (auto &x : p) cin >> x;
    if (n < 6) {
      cout << "0 0 0" << '\n';
      continue;
    }
    long long g_lead = p[0], g_cnt = 1;
    long long x;
    for (int i = 1; i < n / 2; ++i) {
      x = p[i];
      if (x == g_lead)
        ++g_cnt;
      else {
        groups.emplace_back(g_cnt);
        g_lead = x;
        g_cnt = 1;
      }
    }
    x = p[n / 2];
    if (x != g_lead) groups.emplace_back(g_cnt);
    if (groups.size() < 3) {
      cout << "0 0 0" << '\n';
      continue;
    }
    long long gold = groups[0], silver = 0, bronze = 0;
    int pos = 1;
    while (pos < groups.size() && gold >= silver) {
      silver += groups[pos];
      ++pos;
    }
    while (pos < groups.size()) {
      bronze += groups[pos];
      ++pos;
    }
    if (gold < silver && gold < bronze && bronze > 0) {
      cout << gold << ' ' << silver << ' ' << bronze << '\n';
    } else {
      cout << "0 0 0" << '\n';
    }
    groups.clear();
    p.clear();
  }
  return 0;
}
