#include<bits/stdc++.h>
using namespace std;
int fa[30050], length[30050], num[30010];
//num[i]--->第 i 列飞船的数量 length[i]--->飞船 i 到所在列列头的距离
int getfa(int x){
if(fa[x] != x){
int y = getfa(x);
length[x] += length[fa[x]];
fa[x] = y;
}
return fa[x];
}
char c;
int s, t, T;
int main(){
ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
cin>>T;
for(int i = 1 ; i <= 30010 ; i ++){
fa[i] = i;
num[i] = 1;
length[i] = 0;
}
for(int i = 1 ; i <= T ; i ++){
cin>>c>>s>>t;
int x = getfa(s);
int y = getfa(t);
if(c == 'M'){
length[x] = num[y];
fa[x] = y;
num[y] += num[x];
}
if(c == 'C'){
if(x != y) printf("-1\n");
else printf("%d\n", abs(length[s] - length[t]) - 1);
}
}
return 0;
}