#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  srand(time(0));
  ;
  int t;
  cin >> t;
  while (t--) {
    int n;
    cin >> n;
    int a[n];
    for (int i = 0; i < n; i++) cin >> a[i];
    if (n < 10)
      cout << "0 0 0\n";
    else {
      int g = 0, s = 0, b = 0;
      int x = n / 2;
      while (x > 0 && a[x] == a[x - 1]) x--;
      if (x == 0)
        cout << "0 0 0\n";
      else {
        vector<int> v;
        for (int i = 0; i < x; i++) {
          int f = 1;
          while (i < (x - 1) && a[i] == a[i + 1]) {
            i++;
            f++;
          }
          v.push_back(f);
        }
        int d = v.size();
        int s[d];
        s[0] = v[0];
        for (int i = 1; i < d; i++) s[i] = s[i - 1] + v[i];
        int g = 0, si = 0, b = 0;
        for (int i = 0; i < d; i++) {
          int r = s[i];
          if (lower_bound(s + i, s + d, (2 * r) + 1) == s + d) break;
          x = lower_bound(s + i, s + d, (2 * r) + 1) - s;
          int q = s[x] - s[i];
          int p = s[d - 1] - s[x];
          if (p < r + 1) break;
          if (r + q + p > g + si + b) {
            g = r;
            si = q;
            b = p;
          }
        }
        cout << g << " " << si << " " << b << endl;
      }
    }
  }
}
