import java.util.*;
import java.lang.*;
import java.io.*;

public class Main
{
	PrintWriter out = new PrintWriter(System.out);
	BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
    StringTokenizer tok = new StringTokenizer("");
    String next() throws IOException {
        if (!tok.hasMoreTokens()) { tok = new StringTokenizer(in.readLine()); }
        return tok.nextToken();
    }
    int ni() throws IOException { return Integer.parseInt(next()); }
    long nl() throws IOException { return Long.parseLong(next()); }
  
    void solve() throws IOException {
        for (int TC=ni();TC>0;TC--) {
            int n=ni();
            int t=1;
            
            int g=1,s=0,b=0,c=0;
            boolean f=true;
            
            int G=ni();
            int S=0;
            int B=0;
            int C=0;
            
            while (t<n) {
                S=ni();
                if (S<G) { t++; s++; break; }
                g++;
                t++;
            }
            
            while (t<n) {
                B=ni();
                if (B<S && s>g) { t++; c++; break; }
                if (B<S) S=B;
                s++;
                t++;
            }
            
            while (t<n) {
                C=ni();
                t++;
                if (t>n/2) break;
                if (C<B) { b+=c; c=1; B=C; }
                else c++;
            }
            
            while (t<n) { t++; B=ni(); }
            
            if (g+s+b>n/2 || b<g) out.println("0 0 0");
            else out.println(g+" "+s+" "+b);
        }
        out.flush();
    }
    
    public static void main(String[] args) throws IOException {
        new Main().solve();
    }
}