func_code_string: #include <bits/stdc++.h>   #pragma GCC optimize( -O3 )   using namespace std;   const long long N = 1e6 + 5;   const long long MAX = 1e7 + 9;   long long binarySearch(long long arr[], long long l, long long r, long long x) {     if (r >= l) {       long long mid = l + (r - l) / 2;       if (arr[mid] == x) return mid;       if (arr[mid] > x) return binarySearch(arr, l, mid - 1, x);       return binarySearch(arr, mid + 1, r, x);     }     return -1;   }   void pairsort(long long a[], long long b[], long long n) {     pair<long long, long long> pairt[n];     for (long long i = 0; i < n; i++) {       pairt[i].first = a[i];       pairt[i].second = b[i];     }     sort(pairt, pairt + n);     for (long long i = 0; i < n; i++) {       a[i] = pairt[i].first;       b[i] = pairt[i].second;     }   }   long long gcd(long long a, long long b) {     if (b == 0) return a;     return gcd(b, a % b);   }   long long isprime(long long n) {     if (n < 2) return 0;     if (n < 4) return 1;     if (n % 2 == 0 or n % 3 == 0) return 0;     for (long long i = 5; i * i <= n; i += 6)       if (n % i == 0 or n % (i + 2) == 0) return 0;     return 1;   }   long long C(long long n, long long r) {     if (r > n - r) r = n - r;     long long ans = 1;     for (long long i = 1; i <= r; i++) {       ans *= n - r + i;       ans /= i;     }     return ans;   }   long long mod = 1e9 + 7;   long long modexpo(long long x, long long p) {     long long res = 1;     x = x % mod;     while (p) {       if (p % 2) res = res * x;       p >>= 1;       x = x * x % mod;       res %= mod;     }     return res;   }   long long countDistinct(long long arr[], long long n) {     sort(arr, arr + n);     long long res = 0;     for (long long i = 0; i < n; i++) {       while (i < n - 1 && arr[i] == arr[i + 1]) i++;       res++;     }     return res;   }   long long int2Bin(string s) {     reverse(s.begin(), s.end());     long long b = 1;     long long x = 0;     for (long long i = 0; i < s.length(); ++i) {       if (s[i] ==  1 ) x += b;       b *= 2;       ;     }     return x;   }   long long getSum(long long n) {     long long sum;     for (sum = 0; n > 0; sum += n % 10, n /= 10)       ;     return sum;   }   long long nex(long long i) { return (i / 10 + 1) * 10 - i; }   bool up[N];   long long a[N], ind, leave[11];   int32_t main() {     ios::sync_with_stdio(0);     cin.tie(0);     cout.tie(0);     long long t;     cin >> t;     while (t--) {       long long n;       cin >> n;       pair<long long, long long> a[n];       long long i;       for (i = 0; i < n; i++) {         long long x;         cin >> x;         a[i].first = x;         a[i].second = i;       }       sort(a, a + n);       long long ans = 2 * n;       for (i = 1; i < n; i++) {         if (a[i].first == a[i - 1].first)           ans = min(ans, a[i].second - a[i - 1].second + 1);       }       if (ans == 2 * n)         cout <<  -1 n ;       else         cout << ans <<   n ;     }   }   