#include <bits/stdc++.h>
using lli = long long int;
using li = long int;
using namespace std;
const lli MOD{1000000007};
const lli INF{(lli)1e18 + 1};
int main() {
  li T{1};
  cin >> T;
  while (T--) {
    lli n{};
    cin >> n;
    vector<lli> arr(n);
    for (auto &i : arr) cin >> i;
    reverse((arr).begin(), (arr).end());
    lli g{n -
          (lower_bound((arr).begin(), (arr).end(), arr.back()) - arr.begin())};
    if (n - 2 * g < 1) {
      cout << "0 0 0\n";
      continue;
    }
    lli s{n -
          (lower_bound((arr).begin(), (arr).end(), arr[n - 2 * g - 1]) -
           arr.begin()) -
          g};
    lli half{n - n / 2};
    lli b{};
    if (lower_bound((arr).begin(), (arr).end(), arr[half]) - arr.begin() < half)
      b = n -
          ((upper_bound((arr).begin(), (arr).end(), arr[half]) - arr.begin())) -
          s - g;
    else
      b = n -
          (lower_bound((arr).begin(), (arr).end(), arr[half]) - arr.begin()) -
          s - g;
    if (b <= g)
      cout << "0 0 0\n";
    else
      cout << g << ' ' << s << ' ' << b << '\n';
  }
  return 0;
}
