#include <bits/stdc++.h>
using namespace std;
int n,m;
char a;
int en[5000][5000];
int fa[200005];
int zz[200005];
int root(int x)
{
if(x==fa[x]) return x;
return fa[x]=root(fa[x]);
}
void merge(int x,int y)
{
int fx=root(x);
int fy=root(y);
if(fx==fy) return;
fa[fx]=fy;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
fa[i]=i;
}
int x,y;
for(int i=1;i<=m;i++)
{
cin>>a>>x>>y;
if(a=='E')
{
en[x][y]=1;
}
else if(a=='F')
{
merge(x,y);
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
for(int k=1;k<=n;k++)
{
if(en[i][j]&&en[i][k])
{
merge(j,k);
}
}
}
}
for(int i=1;i<=n;i++)
{
int fi=root(i);
zz[fi]=1;
}
int ans=0;
for(int i=1;i<=n;i++) ans+=zz[i];
cout<<ans;
return 0;
}