#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");
}
}