두 개의 트리를 이용하는 놀이
시간 제한2초메모리 제한512 MB
두 트리에서 특수 노드를 하나씩 포함하는 경로 수를 세고, 두 트리 사이에 간선을 하나 이었을 때 각 (i, j) 쌍의 경로 수에 (i+j)를 곱해 모두 더한 값을 구합니다.
문제
Albert는 두 개의 트리를 이용한 놀이를 하고 있습니다. 첫 번째 트리 는 개의 노드를 가지며, 노드는 로 나타냅니다. 이 중 에 속한 노드를 "특별한" 노드로 봅니다. 두 번째 트리 는 개의 노드를 가지며, 노드는 로 나타냅니다. 이 중 에 속한 노드가 특별한 노드입니다.
아래 그림은 두 트리가 각각 3개의 노드를 가진 예()입니다. 에는 3개, 에는 1개의 노드가 있습니다. 특별한 노드는 그림에서 이중선으로 표시되어 있습니다.

각 트리에서 노드를 하나씩 골라 간선으로 연결하면 두 트리를 하나로 합칠 수 있습니다. 간선 를 에 추가한 트리를 라고 합니다. 의 "완벽도" 는 에 있는 모든 단순 경로 중 에 속한 노드를 정확히 하나, 에 속한 노드를 정확히 하나 포함하는 경로의 개수로 정합니다. 이런 경로를 "완벽한 경로"라고 합니다.
예에서 , , 입니다. 의 완벽한 경로는 하나뿐입니다. 의 완벽한 경로는 , , 의 3개입니다. 의 완벽한 경로는 하나뿐입니다.

같은 방법으로 , , , , , 을 구할 수 있습니다.
한 쌍의 를 구하는 것은 쉬우므로, Albert는 다음 값을 구하려 합니다. . 위 예에서 이 값은 60입니다.
두 트리가 주어졌을 때 를 구하세요.
입력
첫 줄에 테스트 케이스의 수 가 주어집니다.
각 테스트 케이스의 첫 줄에는 와 가 공백으로 구분되어 주어집니다. 둘째 줄에는 에 속한 노드의 번호 개가 공백으로 구분되어 주어집니다. 다음 줄에는 의 간선이 한 줄에 하나씩, 정수 두 개로 주어집니다.
이어서 두 번째 트리를 나타내는 와 가 공백으로 구분되어 주어집니다. 다음 줄에는 에 속한 노드의 번호 개가 주어집니다. 마지막으로 의 간선을 나타내는 줄이 주어집니다.
출력
각 테스트 케이스마다 를 로 나눈 나머지를 한 줄에 출력합니다.
제한
- 입력으로 주어지는 에 중복된 원소는 없습니다.
- 입력으로 주어지는 에 중복된 원소는 없습니다.
- 두 트리 , 는 올바른 트리입니다.