#include <bits/stdc++.h>
#define F first
#define S second
using namespace std;
int const N=250001,poc=1<<18;
int tree[2*poc],l=1,w=0,a,b,c;
pair<int,int>odw[N];
vector<int>g[N];
void dfs(int v){
odw[v].F=l;
l++;
for(int i:g[v]){
if(odw[i].F==0) dfs(i);
}
odw[v].S=l;
l++;
}
void Update(int v,int p,int k){
if(b<p||k<a) return;
if(a<=p&&k<=b) tree[v]++;
else{
Update(2*v,p,(p+k)/2); Update(2*v+1,(p+k)/2+1,k);
}
}
int Read(int v){
w=0;
while(v>0){
w+=tree[v];
v/=2;
}
return w;
}
int main(){
int n,m;
char x;
cin>>n;
for(int i=1;i<n;i++){
cin>>a>>b;
g[a].push_back(b);
g[b].push_back(a);
}
dfs(1);
for(int i=1;i<=n;i++) cout<<odw[i].F<<" "<<odw[i].S<<endl;
//czy dziala?
cin>>m;
for(int i=1;i<n+m;i++){
cin>>x;
if(x=='A'){
cin>>a>>b;
a=odw[b].F+poc;
b=odw[b].S+poc;
Update(1,poc+1,2*poc+1);
}
else{
cin>>a;
cout<<Read(a+poc)<<"\n";
}
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgRiBmaXJzdAojZGVmaW5lIFMgc2Vjb25kCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBjb25zdCBOPTI1MDAwMSxwb2M9MTw8MTg7CmludCB0cmVlWzIqcG9jXSxsPTEsdz0wLGEsYixjOwpwYWlyPGludCxpbnQ+b2R3W05dOwp2ZWN0b3I8aW50PmdbTl07Cgp2b2lkIGRmcyhpbnQgdil7CiAgICBvZHdbdl0uRj1sOwogICAgbCsrOwogICAgZm9yKGludCBpOmdbdl0pewogICAgICAgIGlmKG9kd1tpXS5GPT0wKSBkZnMoaSk7CiAgICB9CiAgICBvZHdbdl0uUz1sOwogICAgbCsrOwp9Cgp2b2lkIFVwZGF0ZShpbnQgdixpbnQgcCxpbnQgayl7CiAgICBpZihiPHB8fGs8YSkgcmV0dXJuOwogICAgaWYoYTw9cCYmazw9YikgdHJlZVt2XSsrOwogICAgZWxzZXsKICAgICAgICBVcGRhdGUoMip2LHAsKHAraykvMik7IFVwZGF0ZSgyKnYrMSwocCtrKS8yKzEsayk7CiAgICB9Cn0KCmludCBSZWFkKGludCB2KXsKICAgIHc9MDsKICAgIHdoaWxlKHY+MCl7CiAgICAgICAgdys9dHJlZVt2XTsKICAgICAgICB2Lz0yOwogICAgfQogICAgcmV0dXJuIHc7Cn0KCmludCBtYWluKCl7CiAgICBpbnQgbixtOwogICAgY2hhciB4OwogICAgY2luPj5uOwogICAgZm9yKGludCBpPTE7aTxuO2krKyl7CiAgICAgICAgY2luPj5hPj5iOwogICAgICAgIGdbYV0ucHVzaF9iYWNrKGIpOwogICAgICAgIGdbYl0ucHVzaF9iYWNrKGEpOwogICAgfQogICAgZGZzKDEpOwogICAgZm9yKGludCBpPTE7aTw9bjtpKyspIGNvdXQ8PG9kd1tpXS5GPDwiICI8PG9kd1tpXS5TPDxlbmRsOwogICAgLy9jenkgZHppYWxhPwogICAgY2luPj5tOwogICAgZm9yKGludCBpPTE7aTxuK207aSsrKXsKICAgICAgICBjaW4+Png7CiAgICAgICAgaWYoeD09J0EnKXsKICAgICAgICAgICAgY2luPj5hPj5iOwogICAgICAgICAgICBhPW9kd1tiXS5GK3BvYzsKICAgICAgICAgICAgYj1vZHdbYl0uUytwb2M7CiAgICAgICAgICAgIFVwZGF0ZSgxLHBvYysxLDIqcG9jKzEpOwogICAgICAgIH0KICAgICAgICBlbHNlewogICAgICAgICAgICBjaW4+PmE7CiAgICAgICAgICAgIGNvdXQ8PFJlYWQoYStwb2MpPDwiXG4iOwogICAgICAgIH0KICAgIH0KfQ==