#include <bits/stdc++.h>
using namespace std;
const int M = 1e9 + 7;
template <class T>
T ABS(const T &x) {
  return x > 0 ? x : -x;
}
long long int gcd(long long int n1, long long int n2) {
  return n2 == 0 ? ABS(n1) : gcd(n2, n1 % n2);
}
long long int lcm(long long int n1, long long int n2) {
  return n1 == 0 && n2 == 0 ? 0 : ABS(n1 * n2) / gcd(n1, n2);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  int t;
  cin >> t;
  while (t--) {
    int n;
    cin >> n;
    int a[n], cnt = 1;
    vector<int> p;
    cin >> a[0];
    int i = 1;
    for (i = 1; i < n; ++i) {
      cin >> a[i];
      if (a[i] == a[i - 1])
        ++cnt;
      else {
        p.push_back(cnt);
        cnt = 1;
      }
    }
    p.push_back(cnt);
    int g = p[0], s = 0, b = 0, size = p.size(), given = g;
    i = 1;
    while (i < size) {
      int cur = p[i];
      if (given + cur > n / 2 || s > g) break;
      given += cur;
      s += cur;
      ++i;
    }
    while (i < size) {
      int cur = p[i];
      if (given + cur > n / 2) break;
      given += cur;
      b += cur;
      ++i;
    }
    if (g >= b || g >= s || g == 0 || b == 0 || s == 0 || g + s + b > n / 2) {
      cout << 0 << " " << 0 << " " << 0 << "\n";
    } else
      cout << g << " " << s << " " << b << "\n";
  }
  return 0;
}
