흑곰과 흰곰은 룬 숲에 사는 커모드 곰 남매이다. 두 곰은 숲에 있는 나무 한 그루에서 문자열 놀이를 하려고 한다. 룬 숲의 나무는 1부터 N까지의 정점과 N−1개의 양방향 간선으로 이루어진 연결 그래프이다. 나무의 i번 정점에는 알파벳 대문자 r_i가 적혀있다. 두 곰은 다음과 같은 규칙을 통해 나무에서 각자 원하는 문자열을 하나씩 만든다.
이러한 규칙을 통해 나무에서 만든 문자열을 S(x,y)라고 부른다. 문자열 놀이를 하는 동안 나무에 적혀있는 문자가 사라지거나 변하는 일은 없다.
흑곰은 정점 a와 정점 b를 골라 문자열 S(a,b)를 만든다. 흰곰은 정점 c와 정점 d를 골라 문자열 S(c,d)를 만든다. 그리고 두 문자열을 왼쪽 끝부터 비교했을 때 몇 글자가 겹치는지 확인한다. 이것이 바로 커모드 곰의 문자열 놀이이다.
룬 숲의 나무 한 그루가 주어진다. 두 곰은 이 나무에서 문자열 놀이를 M번 할 것이다. i번째 놀이에서 흑곰이 고른 정점 a_i,b_i와 흰곰이 고른 정점 c_i,d_i가 주어진다. 이때 S(a_i,b_i)와 S(c_i,d_i)를 왼쪽 끝부터 비교했을 때 몇 글자가 겹치는지 답해야 한다.
첫 번째 줄에 정점의 개수 N이 주어진다. (2≤N≤2×105)
두 번째 줄부터 N개의 줄에 걸쳐 i+1 번째 줄에 i번 정점에 써있는 문자 r_i가 주어진다. r_i는 알파벳 대문자이다.
N+2 번째 줄부터 N−1개의 줄에 걸쳐 간선의 양 끝 정점 u_i와 v_i가 공백으로 구분되어 주어진다. (1≤u_i<v_i≤N)
2N+1 번째 줄에 정수 M이 주어진다. (1≤M≤2×105)
2N+2 번째 줄부터 M개의 줄에 걸쳐 흑곰과 흰곰이 고른 정점 a_i,b_i,c_i,d_i가 공백으로 구분되어 주어진다. (1≤a_i,b_i,c_i,d_i≤N)
첫 번째 줄부터 M개의 줄에 걸쳐 S(a_i,b_i)와 S(c_i,d_i)를 왼쪽 끝부터 비교했을 때 겹치는 글자의 개수를 출력한다.