import java.util.*;
import java.io.*;
import java.math.*;
public class Main{
	static int mod = (int)1e9+7;
	public static PrintWriter out = new PrintWriter (new BufferedOutputStream(System.out));
	public static void main(String sp[])throws IOException{
		FastReader sc = new FastReader();
		int t =  sc.nextInt();
		while(t-->0){
			int n = sc.nextInt();
			int arr[] = new int[n+1];
			for(int i=1;i<=n;i++)
				arr[i] = sc.nextInt();
			int comp = arr[(int)(n/2)+1];
			int mid = (int)(n/2);
			int gold = 0;
			int silver = 0;
			int bronze = 0;
			int flag= 0;
			HashMap<Integer,Integer> hm = new LinkedHashMap<>();
			for(int i=1;i<=mid;i++){
				int val = arr[i];
				if(val==arr[mid+1])
					break;
				if(!hm.containsKey(val))
					hm.put(val,1);
				else hm.put(val, hm.get(val)+1);
			}
			ArrayList<Integer> key = new ArrayList<>(hm.keySet());
			if(key.size()<3){
				System.out.println("0 0 0");
				continue;
			}
			int siz = key.size();
			gold = hm.get(key.get(0));
			int index = 1;
			while(index<siz && silver<=gold){
				silver+=hm.get(key.get(index));
				index++;
			}
			while(index<siz){
				bronze+=hm.get(key.get(index));
				index++;
			}
			if((gold==0 || silver==0 || bronze==0) || (silver<=gold || bronze<=gold))
				System.out.println("0 0 0");
			else System.out.println(gold+" "+silver+" "+bronze);
		}
	}
	
	public static boolean ok(long count, long diff){
		long m = (count * (count+1))/2l;
		if(m<diff)
			return false;
		return diff%2 == m%2;	
	}
	
	
	public static class pair{
		int a;
		int b;
	}
	
	public static class comp implements Comparator<pair>{
		public int compare(pair o1, pair o2){
			return o1.a-o2.a;
		}
	}
	
	static int parent[];
	public static int find(int a){
		if(parent[a]==a)
			return a;
		int rep = find(parent[a]);
		parent[a]=rep;
		return rep;
	}
	public static void join(int a, int b){
		int f1 = find(a);
		int f2 = find(b);
		if(f1==f2)
			return;
		
		if(f1<f2)
			parent[f2] = f1;
		else parent[f1] = f2;
	}
	
	
	public static class FastReader {
		BufferedReader br;
		StringTokenizer st;
	
 
		public FastReader() {
			br = new BufferedReader(new InputStreamReader(System.in));
		}
 
		String next() {
			while (st == null || !st.hasMoreTokens()) {
				try {
					st = new StringTokenizer(br.readLine());
				} catch (Exception r) {
					r.printStackTrace();
				}
			}
			return st.nextToken();
		}
 
		int nextInt() {
			return Integer.parseInt(next());//converts string to integer
		}
 
		double nextDouble() {
			return Double.parseDouble(next());
		}
 
		long nextLong() {
			return Long.parseLong(next());
		}
 
		String nextLine() {
			String str = "";
			try {
				str = br.readLine();
			} catch (Exception r) {
				r.printStackTrace();
			}
			return str;
		}
	}
}
