uses math;
const fi='';
fo='';
maxk=20;
maxn=trunc(1e5)+3;
oo=2*trunc(1e9);
type arr1 =array[1..maxn] of longint;
arr2 =array[1..maxn,0..maxk] of longint;
var mi,ma,p :arr2;
depth,dad :arr1;
i,j,n,m,q :longint;
link,head,ke,ts :array[-maxn..maxn] of longint;
resma,resmi :longint;
cx :array[1..maxn] of boolean;
procedure add(i,u,v,w:longint);
begin
link[i]:=head[u];
head[u]:=i;
ke[i]:=v;
ts[i]:=w;
end;
procedure enter;
var u,v,w :longint;
begin
readln(n);
for i:=1 to n-1 do
begin
read(u,v,w);
add(i,u,v,w);
add(-i,v,u,w);
end;
end;
procedure dfs(u:longint);
var i,v :longint;
begin
cx[u]:=false;
i := head[u];
while i<>0 do
begin
v:=ke[i];
if cx[v] then
begin
depth[v]:=depth[u]+1;
dad[v]:=u; ma[v,0] := ts[i]; mi[v,0] := ts[i];
dfs(v);
end;
i:=link[i];
end;
end;
procedure init;
var i,j :longint;
begin
fillchar(cx,sizeof(cx),true);
dad[1] := 1; depth[1] :=1;
dfs(1);
for i:=1 to n do
begin
p[i,0] := dad[i];
end;
for j:=1 to maxk do mi[1,0] := oo;
for j:=1 to maxk do ma[1,0] := -oo;
for j:=1 to maxk do
for i:=1 to n do
begin
p[i,j] := p[p[i,j-1],j-1];
ma[i,j] := max(ma[i,j-1],ma[p[i,j-1],j-1]);
mi[i,j] := min(mi[i,j-1],mi[p[i,j-1],j-1]);
end;
end;
procedure lca(u,v:longint);
var i,j :longint;
begin
for i:=maxk downto 0 do
if depth[p[u,i]]>=depth[v] then
begin
resma := max(resma,ma[u,i]);
resmi := min(resmi,mi[u,i]);
u := p[u,i];
end;
for i:=maxk downto 0 do
if depth[p[v,i]]>=depth[u] then
begin
resma := max(resma,ma[v,i]);
resmi := min(resmi,mi[v,i]);
v := p[v,i];
end;
if u=v then exit;
for i:=maxk downto 0 do
if p[u,i]<>p[v,i] then
begin
resma := max(resma,ma[v,i]);
resmi := min(resmi,mi[v,i]);
resma := max(resma,ma[u,i]);
resmi := min(resmi,mi[u,i]);
v := p[v,i];
u := p[u,i];
end;
resma := max(resma,ma[v,0]);
resmi := min(resmi,mi[v,0]);
resma := max(resma,ma[u,0]);
resmi := min(resmi,mi[u,0]);
end;
procedure process;
var u,v,qq :longint;
begin
read(q);
for qq:=1 to q do
begin
read(u,v);
if u=v then begin writeln(0,' ',0); continue; end;
resmi := oo;
resma := -oo;
lca(u,v);
writeln(resmi,' ',resma);
end;
end;
procedure print;
begin
end;
begin
assign(input,fi);reset(input);
assign(output,fo);rewrite(output);
enter;
init;
process;
print;
close(input);close(output);
end.
ICAgIHVzZXMgICAgbWF0aDsKICAgIGNvbnN0ICAgZmk9Jyc7CiAgICAgICAgICAgIGZvPScnOwogICAgICAgICAgICBtYXhrPTIwOwogICAgICAgICAgICBtYXhuPXRydW5jKDFlNSkrMzsKICAgICAgICAgICAgb289Mip0cnVuYygxZTkpOwogICAgIAogICAgdHlwZSAgICBhcnIxICAgID1hcnJheVsxLi5tYXhuXSBvZiBsb25naW50OwogICAgICAgICAgICBhcnIyICAgID1hcnJheVsxLi5tYXhuLDAuLm1heGtdIG9mIGxvbmdpbnQ7CiAgICAgCiAgICB2YXIgICAgIG1pLG1hLHAgICAgICAgICA6YXJyMjsKICAgICAgICAgICAgZGVwdGgsZGFkICAgICAgIDphcnIxOwogICAgICAgICAgICBpLGosbixtLHEgICAgICAgOmxvbmdpbnQ7CiAgICAgICAgICAgIGxpbmssaGVhZCxrZSx0cyA6YXJyYXlbLW1heG4uLm1heG5dIG9mIGxvbmdpbnQ7CiAgICAgICAgICAgIHJlc21hLHJlc21pICAgICA6bG9uZ2ludDsKICAgICAgICAgICAgY3ggICAgICA6YXJyYXlbMS4ubWF4bl0gb2YgYm9vbGVhbjsKICAgIHByb2NlZHVyZSBhZGQoaSx1LHYsdzpsb25naW50KTsKICAgIGJlZ2luCiAgICAgICAgICAgIGxpbmtbaV06PWhlYWRbdV07CiAgICAgICAgICAgIGhlYWRbdV06PWk7CiAgICAgICAgICAgIGtlW2ldOj12OwogICAgICAgICAgICB0c1tpXTo9dzsKICAgIGVuZDsKICAgICAKICAgIHByb2NlZHVyZSBlbnRlcjsKICAgIHZhciAgICAgdSx2LHcgICA6bG9uZ2ludDsKICAgIGJlZ2luCiAgICAgICAgICAgIHJlYWRsbihuKTsKICAgICAgICAgICAgZm9yIGk6PTEgdG8gbi0xIGRvCiAgICAgICAgICAgIGJlZ2luCiAgICAgICAgICAgICAgICAgICAgcmVhZCh1LHYsdyk7CiAgICAgICAgICAgICAgICAgICAgYWRkKGksdSx2LHcpOwogICAgICAgICAgICAgICAgICAgIGFkZCgtaSx2LHUsdyk7CiAgICAgICAgICAgIGVuZDsKICAgIGVuZDsKICAgICAKICAgIHByb2NlZHVyZSBkZnModTpsb25naW50KTsKICAgIHZhciAgICAgaSx2ICAgICA6bG9uZ2ludDsKICAgIGJlZ2luCiAgICAgICAgICAgIGN4W3VdOj1mYWxzZTsKICAgICAgICAgICAgaSA6PSBoZWFkW3VdOwogICAgICAgICAgICB3aGlsZSBpPD4wIGRvCiAgICAgICAgICAgICAgICAgICAgYmVnaW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHY6PWtlW2ldOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgY3hbdl0gdGhlbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWdpbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcHRoW3ZdOj1kZXB0aFt1XSsxOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhZFt2XTo9dTsgbWFbdiwwXSA6PSB0c1tpXTsgbWlbdiwwXSA6PSB0c1tpXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZnModik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGk6PWxpbmtbaV07CiAgICAgICAgICAgICAgICAgICAgZW5kOwogICAgZW5kOwogICAgIAogICAgcHJvY2VkdXJlIGluaXQ7CiAgICB2YXIgICAgIGksaiAgICAgOmxvbmdpbnQ7CiAgICBiZWdpbgogICAgICAgICAgICBmaWxsY2hhcihjeCxzaXplb2YoY3gpLHRydWUpOwogICAgICAgICAgICBkYWRbMV0gOj0gMTsgZGVwdGhbMV0gOj0xOwogICAgICAgICAgICBkZnMoMSk7CiAgICAgICAgICAgIGZvciBpOj0xIHRvIG4gZG8KICAgICAgICAgICAgICAgICAgICBiZWdpbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgcFtpLDBdIDo9IGRhZFtpXTsKICAgICAgICAgICAgICAgICAgICBlbmQ7CiAgICAgICAgICAgIGZvciBqOj0xIHRvIG1heGsgZG8gbWlbMSwwXSA6PSBvbzsKICAgICAgICAgICAgZm9yIGo6PTEgdG8gbWF4ayBkbyBtYVsxLDBdIDo9IC1vbzsKICAgICAgICAgICAgZm9yIGo6PTEgdG8gbWF4ayBkbwogICAgICAgICAgICAgICAgICAgIGZvciBpOj0xIHRvIG4gZG8KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlZ2luCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBbaSxqXSA6PSBwW3BbaSxqLTFdLGotMV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hW2ksal0gOj0gbWF4KG1hW2ksai0xXSxtYVtwW2ksai0xXSxqLTFdKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWlbaSxqXSA6PSBtaW4obWlbaSxqLTFdLG1pW3BbaSxqLTFdLGotMV0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kOwogICAgZW5kOwogICAgcHJvY2VkdXJlIGxjYSh1LHY6bG9uZ2ludCk7CiAgICB2YXIgICAgIGksaiAgICAgOmxvbmdpbnQ7CiAgICBiZWdpbgogICAgICAgICAgICBmb3IgaTo9bWF4ayBkb3dudG8gMCBkbwogICAgICAgICAgICAgICAgICAgIGlmIGRlcHRoW3BbdSxpXV0+PWRlcHRoW3ZdIHRoZW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlZ2luCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc21hIDo9IG1heChyZXNtYSxtYVt1LGldKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzbWkgOj0gbWluKHJlc21pLG1pW3UsaV0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1IDo9IHBbdSxpXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZDsKICAgICAgICAgICAgZm9yIGk6PW1heGsgZG93bnRvIDAgZG8KICAgICAgICAgICAgICAgICAgICBpZiBkZXB0aFtwW3YsaV1dPj1kZXB0aFt1XSB0aGVuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWdpbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNtYSA6PSBtYXgocmVzbWEsbWFbdixpXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc21pIDo9IG1pbihyZXNtaSxtaVt2LGldKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdiA6PSBwW3YsaV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmQ7CiAgICAgICAgICAgIGlmIHU9diB0aGVuIGV4aXQ7CiAgICAgICAgICAgIGZvciBpOj1tYXhrIGRvd250byAwIGRvCiAgICAgICAgICAgICAgICAgICAgaWYgcFt1LGldPD5wW3YsaV0gdGhlbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVnaW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzbWEgOj0gbWF4KHJlc21hLG1hW3YsaV0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNtaSA6PSBtaW4ocmVzbWksbWlbdixpXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc21hIDo9IG1heChyZXNtYSxtYVt1LGldKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzbWkgOj0gbWluKHJlc21pLG1pW3UsaV0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2IDo9IHBbdixpXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdSA6PSBwW3UsaV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmQ7CiAgICAgICAgICAgIHJlc21hIDo9IG1heChyZXNtYSxtYVt2LDBdKTsKICAgICAgICAgICAgcmVzbWkgOj0gbWluKHJlc21pLG1pW3YsMF0pOwogICAgICAgICAgICByZXNtYSA6PSBtYXgocmVzbWEsbWFbdSwwXSk7CiAgICAgICAgICAgIHJlc21pIDo9IG1pbihyZXNtaSxtaVt1LDBdKTsKICAgIGVuZDsKICAgIHByb2NlZHVyZSBwcm9jZXNzOwogICAgdmFyICAgICB1LHYscXEgIDpsb25naW50OwogICAgYmVnaW4KICAgICAgICAgICAgcmVhZChxKTsKICAgICAgICAgICAgZm9yIHFxOj0xIHRvIHEgZG8KICAgICAgICAgICAgICAgICAgICBiZWdpbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZCh1LHYpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdT12IHRoZW4gYmVnaW4gd3JpdGVsbigwLCcgJywwKTsgY29udGludWU7IGVuZDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzbWkgOj0gb287CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc21hIDo9IC1vbzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGNhKHUsdik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3cml0ZWxuKHJlc21pLCcgJyxyZXNtYSk7CiAgICAgICAgICAgICAgICAgICAgZW5kOwogICAgZW5kOwogICAgcHJvY2VkdXJlIHByaW50OwogICAgYmVnaW4KICAgICAKICAgIGVuZDsKICAgICAKICAgIGJlZ2luCiAgICAgICAgICAgIGFzc2lnbihpbnB1dCxmaSk7cmVzZXQoaW5wdXQpOwogICAgICAgICAgICBhc3NpZ24ob3V0cHV0LGZvKTtyZXdyaXRlKG91dHB1dCk7CiAgICAgICAgICAgICAgICAgICAgZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgaW5pdDsKICAgICAgICAgICAgICAgICAgICBwcm9jZXNzOwogICAgICAgICAgICAgICAgICAgIHByaW50OwogICAgICAgICAgICBjbG9zZShpbnB1dCk7Y2xvc2Uob3V0cHV0KTsKICAgIGVuZC4g