#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

bool canCreateDoubledSequence(int N) {
    // Une séquence doublée est impossible si N > 4
    // car pour N ≥ 5, la distance N ne peut pas être respectée
    return N <= 4;
}

vector<int> constructDoubledSequence(int N) {
    if (N == 1) {
        return {1, 1};
    }
    if (N == 4) {
        // Une solution valide pour N = 4
        return {2, 3, 2, 4, 3, 1, 1, 4};
    }
    // Pour N = 2 et N = 3, pas de solution
    return {};
}

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    
    int T;
    cin >> T;
    
    while (T--) {
        int N;
        cin >> N;
        
        if (!canCreateDoubledSequence(N)) {
            cout << "-1\n";
            continue;
        }
        
        vector<int> sequence = constructDoubledSequence(N);
        if (sequence.empty()) {
            cout << "-1\n";
        } else {
            for (int i = 0; i < sequence.size(); i++) {
                cout << sequence[i];
                if (i < sequence.size() - 1) cout << " ";
            }
            cout << "\n";
        }
    }
    
    return 0;
}