#include<bits/stdc++.h>
using namespace std;
int n, k, f[300005], eat[300005], cnt, a, b;
short op;
int find(int k){
if(k == f[k]) return k;
return f[k] = find(f[k]);
}
int main(){
cin >> n >> k;
for(int i = 1; i <= n * 3; i++){
f[i] = i;
}
while(k--){
cin >> op >> a >> b;
int x = find(a), y = find(b);
if(op == 1){
if(eat[x] == y || eat[y] == x){
cnt++;
continue;
}
if(a > n || b > n){
cnt++;
continue;
}
f[x] = b;
}else if(op == 2){
if(x == y){
cnt++;
continue;
}
if(a > n || b > n){
cnt++;
continue;
}
eat[x] = y;
eat[y] = x;
}
}
cout << cnt << endl;
return 0;
}