import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;


public class Main {
	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
		int t=in.nextInt();
		while(t--!=0){
			int n=in.nextInt();
			int arr[]=new int[n];
			Map<Integer, Integer> map=new HashMap<Integer, Integer>();
			for(int i=0;i<n;i++){
				arr[i]=in.nextInt();
				if(map.get(arr[i])==null){
					map.put(arr[i], 1);
				}else{
					map.put(arr[i], map.get(arr[i])+1);
				}
			}
			int sum=Integer.MAX_VALUE;
			int max=0,maxdata=-1;
			for (Map.Entry<Integer, Integer> st : map.entrySet()) {
				if(maxdata==st.getValue()){
					sum=-1;
				}else if(st.getValue()>maxdata){
					maxdata=st.getValue();
					max=st.getKey();
					sum=Integer.MAX_VALUE;
				}
			}
//			System.out.println(max+" "+maxdata);
			if(sum==-1){
				System.out.println(sum);
			}else if(n<2){
				System.out.println("-1");
			}else{
				int l=-1,r=-1;
				for (int i = 0; i <n; i++) {
					if(arr[i]==max){
						if(l==-1){
							l=i;
						}else if(r==-1){
							r=i;
//							System.out.println(sum);
							if(sum>r-l){
								sum=r-l;
							}
							l=i;
							r=-1;
						}
					}
				}
				System.out.println(sum+1);
			}
		}
	}
}
