#include <bits/stdc++.h>
using namespace std;
mt19937 mt_rand(time(0));
const int N = 4e5 + 5;
int n, tab[N], t;
int main() {
  scanf("%d", &t);
  while (t--) {
    scanf("%d", &n);
    for (int i = 1; i <= n; i++) {
      scanf("%d", &tab[i]);
    }
    int wsk = 1;
    while (wsk != n && tab[wsk] == tab[wsk + 1]) wsk++;
    if (wsk == n) {
      printf("0 0 0\n");
      continue;
    }
    int g = wsk;
    int il = 0;
    wsk++;
    while (wsk != n && (il < g || tab[wsk] == tab[wsk + 1])) {
      wsk++;
      il++;
    }
    if (wsk == n) {
      printf("0 0 0\n");
      continue;
    }
    int s = wsk - g;
    il = 0;
    wsk++;
    while (wsk != n && (il < g || tab[wsk] == tab[wsk + 1])) {
      wsk++;
      il++;
    }
    if (il < g || wsk > n / 2) {
      printf("0 0 0\n");
      continue;
    }
    int x = wsk;
    for (int i = x; i <= n / 2 + 1; i++)
      if (tab[i] != tab[i - 1]) x = i - 1;
    printf("%d %d %d\n", g, s, x - g - s);
  }
  return 0;
}
