import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;
public class DominatedSubarray {

	public static void main(String[] args)
	{
		Scanner obj=new Scanner(System.in);
		int t=obj.nextInt();
		while(t-->0)
		{
			int n=obj.nextInt();
			HashMap<Integer,Integer> map=new HashMap<>();
			ArrayList<Integer> arr=new ArrayList<Integer>();
			ArrayList<Integer> idx=new ArrayList<Integer>();
			int min=Integer.MAX_VALUE;
			for(int i=0;i<n;i++)
			{
				int a=obj.nextInt();		
				if(!map.containsKey(a))
				{
					map.put(a,i);
				}
				else
				{
					min=Math.min(min, i-map.get(a)+1);
					int value=map.get(a);
					map.put(a, i);
				}
			}
			if(min==Integer.MAX_VALUE)
			System.out.println("-1");
			else
				System.out.println(min);
		}
	}
}
