func_code_string: #include <bits/stdc++.h>   using namespace std;   long long int sqr(long long int x) { return x * x; }   inline long long int add(long long int a, long long int b) {     long long int c = a + b;     if (c >= 1000000007) c -= 1000000007;     return c;   }   inline long long int mul(long long int a, long long int b) {     return (a * 1ll * b) % 1000000007;   }   inline long long int sub(long long int a, long long int b) {     long long int c = a - b;     if (c < 0) c += 1000000007;     return c;   }   const int nax = 1000 * 1000 + 10;   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     cout.tie(NULL);     auto ok = [](vector<int> &v, int pos) {       swap(v[pos + 1], v[pos + 2]);       swap(v[pos], v[pos + 1]);     };     int t;     cin >> t;     while (t--) {       int n;       cin >> n;       vector<int> v(n);       vector<pair<int, int>> x(n);       for (int i = 0; i < n; ++i) {         cin >> v[i];         x[i] = {v[i], i};       }       sort(x.begin(), x.end());       for (int i = 0; i < n; ++i) {         v[x[i].second] = i;       }       int cnt = 0;       for (int i = 0; i < n; ++i) {         for (int j = i + 1; j < n; ++j) {           cnt += (v[j] < v[i]);         }       }       if (cnt & 1) {         for (int i = 0; i < n - 1; ++i) {           if (x[i].first == x[i + 1].first) {             swap(v[x[i].second], v[x[i + 1].second]);             break;           }         }       }       vector<int> ans;       for (int i = 0; i < n - 2; ++i) {         int pos = min_element(v.begin() + i, v.end()) - v.begin();         while (pos > i + 1) {           ok(v, pos - 2);           ans.push_back(pos - 2);           pos -= 2;         }         if (pos != i) {           ok(v, i);           ok(v, i);           ans.push_back(i);           ans.push_back(i);         }       }       for (int i = 0; i < 3; ++i) {         if (is_sorted(v.begin(), v.end())) break;         ok(v, n - 3);         ans.push_back(n - 3);       }       if (!is_sorted(v.begin(), v.end())) {         cout << -1 <<   n ;       } else {         cout << ans.size() <<   n ;         for (int i = 0; i < ans.size(); ++i) cout << ans[i] + 1 <<    ;         cout <<   n ;       }     }     return 0;   }   