#https://w...content-available-to-author-only...j.com/problems/JNEXT/
t = int(input())
for k in range(t):
n = int(input())
no = list(map(int,input().split(" ")))
i=n-1
found = True
while i > 0 and no[i - 1] >= no[i]:
i -= 1
if i <= 0:
found=False
if(found==True):
j = len(no) - 1
while no[j] <= no[i - 1]:
j -= 1
no[i - 1], no[j] = no[j], no[i - 1]
list1 = no[0:i]
list2 = no[i:n]
list2.sort()
no=list1+list2
no=''.join(str(x) for x in no)
print(no)
else:
print(-1)
I2h0dHBzOi8vdy4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uai5jb20vcHJvYmxlbXMvSk5FWFQvCnQgPSBpbnQoaW5wdXQoKSkKCmZvciBrIGluIHJhbmdlKHQpOgogbiA9IGludChpbnB1dCgpKQogbm8gPSBsaXN0KG1hcChpbnQsaW5wdXQoKS5zcGxpdCgiICIpKSkKIGk9bi0xCiBmb3VuZCA9IFRydWUKIHdoaWxlIGkgPiAwIGFuZCBub1tpIC0gMV0gPj0gbm9baV06CiAgICAgICAgaSAtPSAxCiBpZiBpIDw9IDA6CiAgICBmb3VuZD1GYWxzZQogICAgICAgICAgCiBpZihmb3VuZD09VHJ1ZSk6CiAgICBqID0gbGVuKG5vKSAtIDEKICAgIHdoaWxlIG5vW2pdIDw9IG5vW2kgLSAxXToKICAgICAgICBqIC09IDEKICAgIG5vW2kgLSAxXSwgbm9bal0gPSBub1tqXSwgbm9baSAtIDFdCgogICAgbGlzdDEgPSBub1swOmldCiAgICBsaXN0MiA9IG5vW2k6bl0KICAgIGxpc3QyLnNvcnQoKQogICAgbm89bGlzdDErbGlzdDIKICAgIG5vPScnLmpvaW4oc3RyKHgpIGZvciB4IGluIG5vKQogICAgcHJpbnQobm8pCgogZWxzZToKICAgIHByaW50KC0xKQoKCg==