#include <bits/stdc++.h>
using namespace std;
#define pb push_back
#define sz(x) (int)(x).size()
#define ff first
#define ss second
#define mx 100005
#define nn "\n"
#define sp " "
#define MIN(a, b, c) min(a, min(b, c))
#define MAX(a, b, c) max(a, max(b, c))
#define mp make_pair
#define ll long long int
#define loop(i, n, a) for (i = a; i < n; ++i)
#define dloop(i, n) for (i = n - 1; i > 0; --i)
#define test while (t--)
#define all(s) s.begin(), s.end()
#define fast ios_base::sync_with_stdio(false)
#define setp(n) fixed << setprecision(n)

typedef vector<ll> vl;
typedef vector<int> vi;
typedef vector<bool> vb;
typedef map<int, int> mi;
typedef map<ll, ll> ml;
typedef pair<int, int> pi;
typedef pair<ll, ll> pl;

void yay(ll flag)
{
    if (flag == 0)
        cout << "NO";
    else
        cout << "YES";
    cout << endl;
}

template <typename T>
void unq(vector<T> &vec)
{
    sort(all(vec));
    vec.erase(unique(all(vec)), vec.end());
}

template <typename T>
void dsp(vector<T> &v, ll n, ll a=0)
{
    ll i;
    loop(i, n, a)
    {
        cout << v[i] << sp;
    }
    cout << nn;
}

template <typename T>
void input(vector<T> &v, ll n)
{
    ll i;
    T x;
    loop(i, n, 0)
    {
        cin >> x;
        v.pb(x);
    }
}

int eve(ll x)
{
    if (x % 2 == 0)
        return 1;
    return 0;
}

const ll inf = 1e17 + 7;
const int infi = 1e9 + 7;
const ll dd = 8e7 + 7;
const ll mod = 1e9 + 7;

void solve()
{
   int n,i,x;
   vi v;
   cin>>n;
   input(v,n);
   
       map<int,int> m;
       for(i=0;i<n;++i)
       {    
           m[v[i]]++;  
       }
       for(auto j:m)
       {
           if(j.ss==1)
           {
                x=j.ff;
           }
       }
       for(i=0;i<n;++i)
       {
           if(v[i]==x)
           {
               cout<<i+1;
               return ;
           }
       }
}
int main()
{
    fast;
    int t = 1;
    cin >> t;
    test
    {
        solve();
        cout << nn;
    }
}

### Prompt

Your challenge is to write a cpp solution to the following problem:

You are given an array a consisting of n (n ≥ 3) positive integers. It is known that in this array, all the numbers except one are the same (for example, in the array [4, 11, 4, 4] all numbers except one are equal to 4).

Print the index of the element that does not equal others. The numbers in the array are numbered from one.

Input

The first line contains a single integer t (1 ≤ t ≤ 100). Then t test cases follow.

The first line of each test case contains a single integer n (3 ≤ n ≤ 100) — the length of the array a.

The second line of each test case contains n integers a_1, a_2, …, a_n (1 ≤ a_i ≤ 100).

It is guaranteed that all the numbers except one in the a array are the same.

Output

For each test case, output a single integer — the index of the element that is not equal to others.

Example

Input


4
4
11 13 11 11
5
1 4 4 4 4
10
3 3 3 3 10 3 3 3 3 3
3
20 20 10


Output


2
1
5
3

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
#define pb push_back
#define sz(x) (int)(x).size()
#define ff first
#define ss second
#define mx 100005
#define nn "\n"
#define sp " "
#define MIN(a, b, c) min(a, min(b, c))
#define MAX(a, b, c) max(a, max(b, c))
#define mp make_pair
#define ll long long int
#define loop(i, n, a) for (i = a; i < n; ++i)
#define dloop(i, n) for (i = n - 1; i > 0; --i)
#define test while (t--)
#define all(s) s.begin(), s.end()
#define fast ios_base::sync_with_stdio(false)
#define setp(n) fixed << setprecision(n)

typedef vector<ll> vl;
typedef vector<int> vi;
typedef vector<bool> vb;
typedef map<int, int> mi;
typedef map<ll, ll> ml;
typedef pair<int, int> pi;
typedef pair<ll, ll> pl;

void yay(ll flag)
{
    if (flag == 0)
        cout << "NO";
    else
        cout << "YES";
    cout << endl;
}

template <typename T>
void unq(vector<T> &vec)
{
    sort(all(vec));
    vec.erase(unique(all(vec)), vec.end());
}

template <typename T>
void dsp(vector<T> &v, ll n, ll a=0)
{
    ll i;
    loop(i, n, a)
    {
        cout << v[i] << sp;
    }
    cout << nn;
}

template <typename T>
void input(vector<T> &v, ll n)
{
    ll i;
    T x;
    loop(i, n, 0)
    {
        cin >> x;
        v.pb(x);
    }
}

int eve(ll x)
{
    if (x % 2 == 0)
        return 1;
    return 0;
}

const ll inf = 1e17 + 7;
const int infi = 1e9 + 7;
const ll dd = 8e7 + 7;
const ll mod = 1e9 + 7;

void solve()
{
   int n,i,x;
   vi v;
   cin>>n;
   input(v,n);
   
       map<int,int> m;
       for(i=0;i<n;++i)
       {    
           m[v[i]]++;  
       }
       for(auto j:m)
       {
           if(j.ss==1)
           {
                x=j.ff;
           }
       }
       for(i=0;i<n;++i)
       {
           if(v[i]==x)
           {
               cout<<i+1;
               return ;
           }
       }
}
int main()
{
    fast;
    int t = 1;
    cin >> t;
    test
    {
        solve();
        cout << nn;
    }
}

```