import java.util.*;
public class test
{
    public static void main(String[] args)
     {
        Scanner sc =new Scanner(System.in);
        int t=sc.nextInt();
        while(t!=0)
        {
            int n=sc.nextInt();
            
            HashMap<Integer ,ArrayList<Integer>> map = new HashMap<Integer ,ArrayList<Integer>>();
            
            for(int i=0;i<n;i++)
            {
                
                int x=sc.nextInt();
                if(map.containsKey(x))
                {
                    ArrayList<Integer> list = map.get(x);
                    list.add(i+1);
                    map.replace(x , list);
                }
                    
                else 
                {
                    ArrayList<Integer> list = new ArrayList<Integer>();
                    list.add(i+1);
                    map.put(x ,list );
                }
                  
            }
           
            long max=Long.MAX_VALUE;
            for(int x : map.keySet())
            {
                
                if(map.get(x).size() > 1 )
                {
                    ArrayList<Integer> list =map.get(x); 
                    for(int j=0;j<list.size()-1;j++)
                    {
                        if( list.get(j+1) - list.get(j) < max)
                            max = list.get(j+1) - list.get(j);
                    }
                }
            }
            if(max != Long.MAX_VALUE)
            System.out.println(max+1);
            else 
            System.out.println("-1");
            t--;
        }
    }
}