# 複数の値をキーにするソートを行うため、クラスを作成した。

# レストランを紹介する本のクラス。
class Book:
  	# インスタンス
    def __init__(self, no, name, value):
      	# レストラン番号(0から開始する)
        self.no = no
        # レストラン名
        self.name = name
        # レストラン評価
        self.value = value
# 本のクラスの配列。
book = []
n = int(input())
for i in range(n):
  	# レストラン名、レストラン評価
    s, p = input().split()
    book.append(Book(i, s, int(p)))

# レストラン評価の降順で整列する。
book = sorted(book, key=lambda b: b.value, reverse=True)
# レストラン名で整列する。
book = sorted(book, key=lambda b: b.name)
for b in book:
  	# 本に紹介されるレストラン順で表示する。
    print(b.no+1) class Book:
  	# インスタンス
    def __init__(self, no, name, value):
      	# レストラン番号(0から開始する)
        self.no = no
        # レストラン名
        self.name = name
        # レストラン評価
        self.value = value
# 本のクラスの配列。 Book def __init__(self, no, name, value):
      	# レストラン番号(0から開始する)
        self.no = no
        # レストラン名
        self.name = name
        # レストラン評価
        self.value = value
# 本のクラスの配列。 __init__ self.no = no self.no self no no self.name = name self.name self name name self.value = value self.value self value value self self no no name name value value book = [] book [] n = int(input()) n int(input()) int input() input for i in range(n):
  	# レストラン名、レストラン評価
    s, p = input().split()
    book.append(Book(i, s, int(p)))

# レストラン評価の降順で整列する。 i range(n) range n s, p = input().split() s input().split() ().split () input split p book.append(Book(i, s, int(p))) book.append book append Book(i, s, int(p)) Book i s int(p) int p book = sorted(book, key=lambda b: b.value, reverse=True) book sorted(book, key=lambda b: b.value, reverse=True) sorted book key=lambda b: b.value key lambda b: b.value b.value b value b reverse=True reverse True book = sorted(book, key=lambda b: b.name) book sorted(book, key=lambda b: b.name) sorted book key=lambda b: b.name key lambda b: b.name b.name b name b for b in book:
  	# 本に紹介されるレストラン順で表示する。
    print(b.no+1) b book print(b.no+1) print b.no+1 b.no b no 1 p = input().split() input().split() p class Book:
  	# インスタンス
    def __init__(self, no, name, value):
      	# レストラン番号(0から開始する)
        self.no = no
        # レストラン名
        self.name = name
        # レストラン評価
        self.value = value
# 本のクラスの配列。 class Book:
  	# インスタンス
    def __init__(self, no, name, value):
      	# レストラン番号(0から開始する)
        self.no = no
        # レストラン名
        self.name = name
        # レストラン評価
        self.value = value
# 本のクラスの配列。 Book book = sorted(book, key=lambda b: b.value, reverse=True) sorted(book, key=lambda b: b.value, reverse=True) book n = int(input()) int(input()) n book = [] [] book book = sorted(book, key=lambda b: b.name) sorted(book, key=lambda b: b.name) book s, p = input().split() input().split() s
# 複数の値をキーにするソートを行うため、クラスを作成した。

# レストランを紹介する本のクラス。
class Book:
  	# インスタンス
    def __init__(self, no, name, value):
      	# レストラン番号(0から開始する)
        self.no = no
        # レストラン名
        self.name = name
        # レストラン評価
        self.value = value
# 本のクラスの配列。
book = []
n = int(input())
for i in range(n):
  	# レストラン名、レストラン評価
    s, p = input().split()
    book.append(Book(i, s, int(p)))

# レストラン評価の降順で整列する。
book = sorted(book, key=lambda b: b.value, reverse=True)
# レストラン名で整列する。
book = sorted(book, key=lambda b: b.name)
for b in book:
  	# 本に紹介されるレストラン順で表示する。
    print(b.no+1)
