#include<cstdio>
int db[1005];
int dr[1005];
bool f[1005];
inline int read(void){
register int ans=0;
register char us=getchar();
while(us>'9'||us<'0')us=getchar();
while(us>='0'&&us<='9'){
ans=(ans<<3)+(ans<<1)+(us^48);
us=getchar();
}
return ans;
}
inline int t(int x){
if(db[x]!=x)db[x]=t(db[x]);
return db[x];
}
int main(){
register int n,m,i,p,q;
register char c;
n=read();m=read();
for(i=1;i<=n;++i)db[i]=i;
for(i=0;i<m;++i){
scanf("%c",&c);
p=read();q=read();
if(c=='F')db[t(p)]=t(q);
if(c=='E'){
if(dr[p]==0)dr[p]=q;
else db[t(q)]=t(dr[p]);
if(dr[q]==0)dr[q]=p;
else db[t(p)]=t(dr[q]);
}
}
for(i=1;i<=n;++i)f[t(i)]=true;
int shfneh=0;
for(i=1;i<=n;++i)if(f[i])++shfneh;
printf("%d",shfneh);
return 0;
}