from collections import defaultdict from bisect import bisect_left, bisect_right N = int(input()) ans = [] d = {} bs1 = [] xs = [] for i in range(N): A, B = map(int, input().split()) if B == 1: bs1.append(i) xs.append((A, B)) for i, (a, b) in enumerate(xs): if a == 1: d[i+1] = i elif b == 2: j = bisect_left(bs1, i+1) d[bs1[j]] = i else: ans.append(i) t = i while t in d: ans.append(d[t]) t = d[t] print(*[x+1 for x in ans], sep='\n')