t=int(input())for_inrange(t):n=int(input())piles=list(map(int,input().split()))prefix_sum=[0]forpileinpiles:prefix_sum.append(prefix_sum[-1]+pile)left=1right=n# Binary search to find the pile with the special stonewhileright>left:mid=(right+left)//2query_piles=list(range(left,mid+1))# Send the query and flush the outputprint("?",len(query_piles),*query_piles,flush=True)total_weight=int(input())# Check which half the special stone is iniftotal_weight==prefix_sum[mid]-prefix_sum[left-1]:left=mid+1else:right=mid# Output the index of the pile with the special stoneprint("!",(left+right)//2,flush=True)