#include<bits/stdc++.h>
#define pb push_back
using namespace std;
const int N=5e5+5;
int n,Q,fa[N][20],dep[N],q[N],a[N];
vector<int>e[N];
void dfs(int u,int rt){
	dep[u]=dep[rt]+1;fa[u][0]=rt;
	for(int i=1;i<20;i++)fa[u][i]=fa[fa[u][i-1]][i-1];
	for(int v:e[u])if(v^rt)dfs(v,u);
}
inline int lca(int x,int y){
	if(dep[x]<dep[y])swap(x,y);
	for(int i=19;~i;i--)if(dep[fa[x][i]]>=dep[y])x=fa[x][i];
	if(x==y)return x;
	for(int i=19;~i;i--)if(fa[x][i]^fa[y][i])x=fa[x][i],y=fa[y][i];
	return fa[x][0];
}
//struct sgt{
//	#define ls o<<1
//	#define rs o<<1|1
//	int tr[N<<2];
//	inline void pushup(int o){tr[o]=max(tr[ls],tr[rs]);}
//	inline void build(int o,int l,int r){
//		if(l==r)return tr[o]=a[l],void();
//		int mid=l+r>>1;build(ls,l,mid);build(rs,mid+1,r);pushup(o);
//	}
//	inline int qry(int o,int l,int r,int x,int y){
//		if(x<=l&&r<=y)return tr[o];
//		int mid=l+r>>1,res=0;
//		if(x<=mid)res=qry(ls,l,mid,x,y);
//		if(y>mid)res=max(res,qry(rs,mid+1,r,x,y));
//		return res;
//	}
//}T;
//int solve(){
//	while(Q--){
//		int l,r,k;cin>>l>>r>>k;
//		for(int i=1;i<=n;i++){
//			while(l<=r&&dep[q[r]]>dep[i])r--;
//			q[++r]=i;
//			while(i-q[l]+1>k)l++;
//			a[i]=dep[q[l]];
//		}T.build(1,1,n);cout<<T.qry(1,1,n,l,r)<<'\n';
//	}
//	return 0;
//}
int main(){
	freopen("query.in","r",stdin);
	freopen("query.out","w",stdout);
	ios::sync_with_stdio(0);
	cin.tie(0);cout.tie(0);
	cin>>n;
	for(int i=1,u,v;i<n;i++)cin>>u>>v,e[u].pb(v),e[v].pb(u);
	dfs(1,0);cin>>Q;bool flagB=1;
//	for(int i=1;i<=n;i++)if(e[i].size()>1)flagB=0;
//	if(flagB)return solve();
	while(Q--){
		int l,r,k;cin>>l>>r>>k;
//		if(dep[l]-dep[rt]+1>=k)res=max(res,dep[l]-k);
//		if(dep[r]-dep[rt]+1>=k)res=max(res,dep[r]-k);
		if(k==r-l+1){
			int rt=lca(l,r);
			for(int i=l+1;i<r;i++){
				rt=lca(rt,i);
			}cout<<dep[rt]<<'\n';
		}
		else{
			int res=0;
			for(int i=l;i+k-1<=r;i++){
				int rt=i;
				for(int j=i+1;j<=i+k-1;j++){
					rt=lca(rt,j);
				}res=max(res,dep[rt]);//cout<<rt<<'\n';
			}cout<<res<<'\n';
		}
	}
	return 0;
}/*
6
5 6
6 1
6 2
2 3
2 4
3
2 5 2
1 4 1
1 6 3

*/
