#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 5;
int t, n, a[N];
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  ;
  cin >> t;
  while (t--) {
    map<int, int> f;
    set<int> s;
    cin >> n;
    int mx = 0;
    for (int i = 0; i < n; i++) {
      cin >> a[i];
      s.insert(-a[i]);
      mx = max(mx, a[i]);
      f[a[i]]++;
    }
    int g = f[mx];
    s.erase(-mx);
    int sil = 0, bron = 0;
    while (!s.empty() && sil <= g) {
      sil += f[-*s.begin()];
      s.erase(s.begin());
    }
    int have = g + sil;
    int mx_need = n / 2;
    for (int x : s) {
      if (have + f[-x] <= mx_need)
        have += f[-x];
      else
        break;
    }
    if (g < sil && g < have - g - sil && have <= mx_need)
      cout << g << " " << sil << " " << have - g - sil << "\n";
    else
      cout << "0 0 0\n";
  }
  return 0;
}
