t=int(input())
for _ in range(t):
number=int(input())
arr=list(map(int,input().split()))
arrL,arrR,dic,maxx,maxx2=[],[],{},0,0
for num in arr:
if num in dic:
dic[num]+=1
arrL.append(num)
else:
dic[num]=1
arrR.append(num)
maxx=max(maxx,num)
for k,v in dic.items():
if v>2:
maxx2=v
break
if dic[maxx]>1 or maxx2>2:
print(-1)
else:
arrL.sort()
arrR.sort(reverse=True)
ans=arrL+arrR
print(*ans)
48A - Rock-paper-scissors | 294A - Shaass and Oskols |
1213A - Chips Moving | 490A - Team Olympiad |
233A - Perfect Permutation | 1360A - Minimal Square |
467A - George and Accommodation | 893C - Rumor |
227B - Effective Approach | 1534B - Histogram Ugliness |
1611B - Team Composition Programmers and Mathematicians | 110A - Nearly Lucky Number |
1220B - Multiplication Table | 1644A - Doors and Keys |
1644B - Anti-Fibonacci Permutation | 1610A - Anti Light's Cell Guessing |
349B - Color the Fence | 144A - Arrival of the General |
1106A - Lunar New Year and Cross Counting | 58A - Chat room |
230A - Dragons | 200B - Drinks |
13A - Numbers | 129A - Cookies |
1367B - Even Array | 136A - Presents |
1450A - Avoid Trygub | 327A - Flipping Game |
411A - Password Check | 1520C - Not Adjacent Matrix |