import bisect n=int(input()) L=[list(map(int,input().split())) for _ in range(n)] E=[-1]*(n+1) B=[] S=set() for i in range(n): a,b=L[i] if a==1: E[i+1]=i S.add(i) if b==1: B.append(i) for i in range(n): a,b=L[i] if b==2: id=bisect.bisect_left(B,i+1) E[B[id]]=i S.add(i) ans=[] for i in range(n): if i not in S: ans.append(i+1) S.add(i) while E[i]!=-1: i=E[i] ans.append(i+1) else: pass print(*ans,sep="\n")