#include <stdio.h>
#define N 2000005
int pre[N],vis[N];
int n,idex,m;
int fond(int a)
{
return pre[a]==a?a:pre[a]=fond(pre[a]);
}
void unon(int x,int y)
{
x=fond(x);
y=fond(y);
pre[x]=y;
}
void del(int a)
{
pre[a]=idex;
pre[idex]=idex;
vis[idex]=0;
idex++;
}
void init()
{
for(idex=0; idex<n; idex++)
pre[idex]=idex+n;
for(idex; idex<2*n; idex++)
pre[idex]=idex,vis[idex]=0;
}
int main()
{
char str;
int cas=0,x,y,ans;
while(scanf("%d%d",&n,&m)>0&&m+n!=0)
{
idex=ans=0;
init();
while(m--)
{
scanf("%s%d",&str,&x);
if(str=='M')
{
scanf("%d",&y);
unon(x,y);
}
if(str=='S')
{
del(x);
}
}
for(int i=0; i<n; i++)
{
int temp=fond(i);
if(vis[temp]==0)
ans++,vis[temp]=1;
}
printf("Case #%d: %d\n",++cas,ans);
}
return 0;
}