#include <cstdlib>
#include <cstdio>

typedef struct Node {
    int num;
    struct Node* next;
} LNode, *LinkList;

void List_Create(LinkList &L, int N) {
    LNode* s;
    int i;
    L = (LinkList)malloc(sizeof(LNode));
    L->next = L;
    L->num = -1;
    for(i=N; i>0; i--){
        s=(LNode*)malloc(sizeof(LNode));
        s->num = i;
        s->next = L->next;
        L->next = s;
    }
}


int main() {
    int m;
    int N;
    int c;
    scanf("%d", &m);
    while (m--) {
        scanf("%d", &N);
        LinkList L;
        LNode *p, *q;
        List_Create(L, N);
        q = L;  //注意起始位置
        while(L->next != L){
            c = 3;
            // 找到3号结点
            while(c--){
                p = q;
                q = q->next;
                // 去除头结点干扰
                if(q->num == -1){
                    p = q;
                    q = q->next;
                }
            }
            printf("%d ", q->num);
            p->next = q->next;
            free(q);
            q = p;
        }
        printf("\n");
    }
}