#include using namespace std; #define int long long #define rep(i,n) for(int i=0;i #define len(s) (int)s.size() #define pb push_back template inline bool chmin(T &a, T b){ if(a>b){a=b;return true;} return false; } template inline bool chmax(T &a, T b){ if(av[500005]; int ans[500005],add[500005],par[500005]; int find(int x){ if(par[x]==x)return x; return par[x]=find(par[x]); } signed main(){ cin.tie(0);ios::sync_with_stdio(false); cin>>N>>Q; rep(i,N){ par[i]=i;v[i].pb(i); } while(Q--){ int t,a,b;cin>>t>>a>>b; if(t==1){ a--;b--; a=find(a);b=find(b); if(a==b)continue; if(len(v[a])