t=int(input())
while t:
    n=int(input())
    
    l=list(map(int,input().split()))
    #x,u=map(int,input().split())
    #a,b=input().split()        
    limit=n//2
    l1=[]
    cnt=1
    for i in range(n-1):
        if l[i]!=l[i+1]:
            l1.append(cnt)
            cnt=1
        else:
            cnt+=1
    l1.append(cnt)
    n1=len(l1)
    if n1<4:
        print(0,0,0)
    else:
        gold=[]
        bronze=[]
        silver=[]
        g,b,s=0,0,0
        index,maxi=0,0
        #print(l1)
        for i in range(n1-1):
            g+=l1[i]
            if g>=limit:
                break
            b,s=0,0
            for j in range(i+1,n1-2):
                b+=l1[j]
                if b>g :
                    if b>=limit:
                        break
                    for k in range(j+1,n1-1):
                        s+=l1[k]
                        if s>=limit:
                            break
                        #print(1,g,s,b)
                        if g<b and g<s and g>0 and b>0 and s>0 and g+b+s<=limit and maxi<g+b+s:
                            maxi=g+b+s
                            index+=1
                            gold.append(g)
                            silver.append(s)
                            bronze.append(b)
                
        if len(gold)==0:
            print(0,0,0)
        else:
            index-=1
            print(gold[index],bronze[index],silver[index])        
    t-=1