t=int(input())
result=[]
for _ in range(t):
n=int(input())
a=list(map(int,input().split()))
if(n==1):
result.append("1")
continue
my_set=set()
sums=sum(a)
max_sim=0
my_set.add(a[0])
b=[0]*n
count=1
for i in a[1:]:
if(i in my_set):
max_sim=max(max_sim,i)
else:
my_set.add(i)
b[count]=max_sim
count+=1
if(set(b)=={0}):
result.append(str(sums))
continue
sums+=sum(b)
my_set=set([b[0]])
max_sim=0
bro=[0]*n
count=1
for i in b[1:]:
if(i in my_set):
if(i>max_sim):
max_sim=i
else:
my_set.add(i)
bro[count]=max_sim
count+=1
if(set(bro)=={0}):
result.append(str(sums))
continue
for i in range(n):
if(bro[n-1-i]==0):
break
sums+=bro[n-1-i]*(i+1)
result.append(str(sums))
print("\n".join(result))
1428B - Belted Rooms | 519B - A and B and Compilation Errors |
1152B - Neko Performs Cat Furrier Transform | 1411A - In-game Chat |
119A - Epic Game | 703A - Mishka and Game |
1504C - Balance the Bits | 988A - Diverse Team |
1312B - Bogosort | 1616B - Mirror in the String |
1660C - Get an Even String | 489B - BerSU Ball |
977C - Less or Equal | 1505C - Fibonacci Words |
1660A - Vasya and Coins | 1660E - Matrix and Shifts |
1293B - JOE is on TV | 1584A - Mathematical Addition |
1660B - Vlad and Candies | 1472C - Long Jumps |
1293D - Aroma's Search | 918A - Eleven |
1237A - Balanced Rating Changes | 1616A - Integer Diversity |
1627B - Not Sitting | 1663C - Pōja Verdon |
1497A - Meximization | 1633B - Minority |
688B - Lovely Palindromes | 66B - Petya and Countryside |