#include <bits/stdc++.h>
using namespace std;
int main() {
  long long t;
  cin >> t;
  while (t--) {
    long long n, n1, flag2 = 0;
    cin >> n;
    n1 = n;
    vector<long long> vect(n + 1), ans;
    set<pair<long long, long long>, greater<pair<long long, long long> > > set1;
    map<long long, long long> map1;
    for (int i = 1; i <= n; i++) {
      cin >> vect[i];
      map1[vect[i]] += 1;
      if (map1[vect[i]] > 1) flag2 = vect[i];
      set1.insert({vect[i], i});
    }
    while (n1 >= 3) {
      pair<long long, long long> p = *set1.begin();
      set1.erase(p);
      int i;
      for (i = p.second; i <= n1 - 2; i += 2) {
        ans.push_back(i);
        ans.push_back(i);
        set1.erase({vect[i + 1], i + 1});
        set1.erase({vect[i + 2], i + 2});
        set1.insert({vect[i + 1], i});
        set1.insert({vect[i + 2], i + 1});
        swap(vect[i + 1], vect[i]);
        swap(vect[i + 2], vect[i + 1]);
      }
      if (i == n1 - 1) {
        ans.push_back(i - 1);
        set1.erase({vect[i - 1], i - 1});
        set1.erase({vect[i + 1], i + 1});
        set1.insert({vect[i + 1], i - 1});
        set1.insert({vect[i - 1], i});
        swap(vect[i], vect[i + 1]);
        swap(vect[i], vect[i - 1]);
      }
      n1--;
    }
    long long val = flag2;
    for (int i = 3; i <= n; i++) {
      if (vect[i] == flag2) {
        flag2 = i;
        break;
      }
    }
    if (flag2 != 0 || vect[1] <= vect[2]) {
      if (vect[3] == vect[1]) {
        ans.push_back(1);
        ans.push_back(1);
      } else if (vect[1] > vect[2]) {
        for (int i = 1; i <= flag2 - 3; i++) {
          ans.push_back(i);
        }
        ans.push_back(flag2 - 2);
        ans.push_back(flag2 - 2);
        {
          ans.push_back(flag2 - 1);
          ans.push_back(flag2 - 1);
        }
        for (int i = flag2 - 3; i >= 1; i--) {
          ans.push_back(i);
          ans.push_back(i);
        }
      }
      cout << ans.size() << "\n";
      for (int i = 0; i < ans.size(); i++) cout << ans[i] << " ";
      cout << "\n";
    } else
      cout << "-1\n";
  }
  return 0;
}
