import sys sys.setrecursionlimit(10**9) N=int(input()) a,b=0,0 G=[[] for i in range(N)] D=[-1]*N for i in range(N): a,b=map(int,input().split()) a,b=a-1,b-1 G[a].append((b,i+1)) G[b].append((a,i+1)) P=[] def dfsr(n,x,y): global P for i in range(len(G[n])): if G[n][i][0]==x and D[n]==y: P.append(G[n][i][1]) print(len(P)) print(*P) exit() if D[n]+1==D[G[n][i][0]]: P.append(G[n][i][1]) dfsr(G[n][i][0],x,y) def dfs(n,p,d): if D[n]!=-1: dfsr(n,n,d-1) D[n]=d for i in range(len(G[n])): if G[n][i][0]!=p: dfs(G[n][i][0],n,d+1) dfs(0,-1,0)