package main

import (
    "fmt"
)

func main() {
    var t int
    fmt.Scan(&t)
    var n int
    for t>0{
        fmt.Scan(&n)
        var x int
        stk1,stk2:=[]int{},[]int{}
        cnt:=map[int]int{}
        for n>0{
            fmt.Scan(&x)
            if _,ok:=cnt[x];ok{
			  //用两个栈来维护会话列表
                for stk1[len(stk1)-1]!=x{
                    stk2=append(stk2,stk1[len(stk1)-1])
                    stk1=stk1[:len(stk1)-1]
                }
                stk1=append([]int{stk1[len(stk1)-1]},stk1[:len(stk1)-1]...)
                for len(stk2)>0{
                    stk1=append(stk1,stk2[len(stk2)-1])
                    stk2=stk2[:len(stk2)-1]
                }
            }else{
                stk1=append([]int{x},stk1...)
                cnt[x]++
            }
            n--
        }
        for _,x:=range stk1{
            fmt.Printf("%v ",x)
        }
        fmt.Println()
        t--
    }
}