#include <iostream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
using namespace std;
//英语 看博友分析 抄博友程序 带权并查集 背
int fa[20008];
int r[20008];
int find(int x)
{
if(fa[x]==-1)
{
return x;
}else
{
int t=find(fa[x]);
r[x]=(r[x]+r[fa[x]]);//背
fa[x]=t;
return t;
}
}
int main()
{
int T;
scanf("%d",&T);
for(int o=0;o<T;o++)
{
int n;
scanf("%d",&n);
memset(fa,-1,sizeof(int)*(n+4));
memset(r,0,sizeof(int)*(n+4));
while(1)
{
char s[2];
scanf("%s",s);
if(s[0]=='E')
{
int x;
scanf("%d",&x);
find(x);
printf("%d\n",r[x]);
}else if(s[0]=='I')
{
int x,y;
scanf("%d%d",&x,&y);
//int tx=find(x);//背
//int ty=find(y);
fa[x]=y;
r[x]=abs(x-y)%1000;
}else if(s[0]=='O')
{
break;
}
}
}
return 0;
}