def aa(m): c=[] while m!=uf[m]: c.append(m) m=uf[m] for i in c: uf[i]=m return m n,q=map(int,input().split()) uf=[i for i in range(n)] s=set([i for i in range(n)]) for i in range(q): c=list(map(int,input().split())) if c[0]==1: a,b=c[1]-1,c[2]-1 a,b=aa(a),aa(b) if a==b: continue s.discard(b) uf[b]=a else: if len(s)==1: print(-1) continue a,b=s.pop(),s.pop() print(b+1 if aa(c[1]-1) else a+1) s.add(a);s.add(b)