#include<bits/stdc++.h>
using namespace std;
int n,Q,s;
int opt,x,y;
int f[200086];
int find(int x){
return x==f[x]?x:f[x]=find(f[x]);
}
int main(){
cin>>n>>Q;
for(int i=1;i<=3*n;i++)f[i]=i;
while(Q--){
cin>>opt>>x>>y;
if(x>n||y>n){
s++;
continue;
}
if(opt-1){
x=find(x),y=find(y);
if(x==y){
s++;
}
else {
f[y]=x+n;
f[x]=y+n+n;
}
}
else {
x=find(x),y=find(y);
if(x==y+n||x==y+n+n){
s++;
}
else f[y]=x;
}
}
cout<<s;
}