#include <cstdio>
#include <cstring>
using namespace std;
#define MAX 10
int par[MAX],step[MAX],size[MAX];
void init(int n)
{
for(int i=1;i<=n;i++)
{
par[i]=i;
step[i]=0;
size[i]=1;
}
}
int find(int x)
{
if(x==par[x]) return x;
int tmp=par[x];
par[x]=find(tmp);
step[x]+=step[tmp];
return par[x];
}
void Union(int a,int b)
{
int pa=find(a);
int pb=find(b);
par[pa]=pb;
size[pb]+=size[pa];
step[pa]++;
}
int main()
{
int T,n,m,a,b,t=1;
scanf("%d%d",&n,&m);
init(n);
for(int i=0;i<m;i++)
{
char move;
getchar();
move=getchar();
if(move=='T')
{
scanf("%d%d",&a,&b);
Union(a,b);
}
else
{
scanf("%d",&a);
int pa=find(a);
printf("%d %d %d
",pa,size[pa],step[a]);
}
}
}