#include<bits/stdc++.h>
using namespace std;
const int N=3e5+10;
long long line[N],col[N],len[N],tag[N],pre=0;
void init(){
for(long long i=0;i<=N;i++){
line[i]=i;
col[i]=1;
len[i]=1;
tag[i]=0;
}
}
long long check(long long x){
if(line[x]==x){
pre=x;
return x;
}
line[x]=check(line[x]);
tag[x]+=tag[pre];
col[x]+=tag[pre];
pre=x;
return line[x];
}
void merge(long long a,long long b){
long long fa=check(a),fb=check(b);
line[fa]=fb;
tag[fa]+=len[fb];
len[fb]+=len[fa];
}
int main(){
long long n;
cin>>n;
init();
for(long long k=1;k<=n;k++){
char c;
long long i,j;
cin>>c>>i>>j;
if(c=='M'){
merge(i,j);
}
else{
if(check(i)==check(j)){
cout<<abs(col[i]-col[j])-1;
}
else{
cout<<-1;
}
}
}
return 0;
}