import java.util.*;
import java.io.*;
public class bfs {   
	static int gcd(int a, int b) 
    { 
        if (b == 0) 
            return a; 
        return gcd(b, a % b);  
          
    }


	public static void main(String[] args) throws IOException {
		BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

		int t=Integer.parseInt(reader.readLine());
		while(t-->0){
			
			int n=Integer.parseInt(reader.readLine());
			String[] temp=reader.readLine().split(" ");
			int[] arr=new int[n];
			for (int i=0;i<n;i++) {
				arr[i]=Integer.parseInt(temp[i]);
			}
			int g=0,s=0,b=0;
			int index=0;
			for( int i=0;i<n/2;i++) {
				index=i;
				if ((i+1)<arr.length && arr[i]==arr[i+1] || i>0 && arr[i-1]==arr[i] ) {
					g++;
					
				}else if(arr[i]>arr[i+1] && i==0) {
					g++;break;
				}else break;
			}
		int in2=0;
	
			for( int i=index;i<n/2;i++) {
				in2=i;
				 if(s>g && arr[i]<arr[i-1]) break;
				if ((i+1)<arr.length && arr[i]==arr[i+1] || i>0 && arr[i-1]==arr[i] ) {
					s++;
					
				}else if(arr[i]>arr[i+1] && i==index || g>=s && arr[i]!=arr[i+1]) {
					s++;
				}
				
				
			}
				for(int i=in2;i<n/2;i++) {
					if (arr[i]==arr[n/2]) {
						if (b>=s) break;
						else {
						b=0;
						break;
						}
					}
					if(  b==n/2-g-s || in2>=n/2-1) {
						
						break;
				}
					 if(arr[i]>arr[i+1] || s>b && arr[i]!=arr[i+1]) {
						b++;
						
					}else if ((i+1)<arr.length && arr[i]==arr[i+1] || i>0 && arr[i-1]==arr[i] ) {
						b++;
						
					}
					
				}
	
			
			
		if(g>s || g>b || s==0 || b==0) {
			System.out.println("0 0 0");
		}else 
			System.out.println(g+" "+s+" "+b);
			
		}
		
		
		
		
		
		
		
}}
