# Arup Guha
# 7/23/2014
# Solution to 2013 SI@UCF Contest Problem: Monitors

def main():

    myFile = open("monitors.in")
    numCases = int(myFile.readline().strip())

    # Go through each case.
    for loop in range(1, numCases+1):

        # Read stuff.
        n = int(myFile.readline().strip())
            
        items = []
        for i in range(n):
            item = myFile.readline().split()
            items.append(item)

        # Case Header
        print("Monitor set #",loop,":",sep="")

        # Remove monitors one by one.
        while len(items) > 0:
            index = choose(items)
            print(items[index][0])
            del items[index]

        print()

def choose(items):

    # Just see who beats the current best.
    best = 0
    for i in range(1, len(items)):
        if beat(items[i], items[best]):
            best = i

    return best

def beat(item1, item2):

    # Find diagonal lengths.
    num1 = myStrip(item1[0])
    num2 = myStrip(item2[0])

    # No tie so return.
    if num1 > num2:
        return True
    elif num1 < num2:
        return False

    # Go cheaper!
    return float(item1[1]) < float(item2[1])

def myStrip(myStr):
        
    # Screen out digits.
    ans = ""
    for i in range(len(myStr)):
        if myStr[i] >= '0' and myStr[i] <= '9':
            ans = ans + myStr[i]

    # Just return this as an int.
    return int(ans)

# Do it!
main()
