V={1,2,…,n}이고 E⊂{{u,v}∣1≤u,v≤n}이라고 하자. 트리 T=(V,E)는 연결되어 있으면서 간선이 정확히 n−1개인 그래프다. 아래 그림은 트리 T1이다.

T1에서 V={1,2,3,4,5,6,7}이고 E={{4,6},{2,6},{6,5},{3,5},{5,1},{1,7}}이다.
민턴 교수는 트리를 암호로 바꾸는 방법을 찾아냈다. 트리의 암호는 V의 원소 n−2개를 나열한 수열이고, 다음 세 단계를 n−2번 반복해서 만든다.
n−2번을 반복하면 정점이 두 개 남는다. T1의 암호는 ⟨6,5,6,5,1⟩이다.
암호는 숫자 몇 개가 지워진 채로 전해지기도 한다. 지워진 자리는 문자 x로 표시한다. 트리와 숫자가 지워진 암호가 주어지면, 지워진 숫자를 알아내는 프로그램을 작성하시오.
첫째 줄에 테스트 케이스의 개수 t가 주어진다. (1≤t≤10)
각 테스트 케이스는 세 줄이다. 첫째 줄에 정점의 개수 n이 주어진다. (2≤n≤10000) 둘째 줄에 트리를 나타내는 2n−2개의 수가 공백으로 구분되어 주어진다. 앞에서부터 두 개씩 짝을 지어 첫 번째 짝이 첫 번째 간선, 두 번째 짝이 두 번째 간선을 뜻하고, 나머지도 같은 방식이다. 셋째 줄에 숫자가 지워진 암호가 토큰 n−2개로 주어진다. 각 토큰은 정점 번호이거나, 지워진 자리를 뜻하는 x다. n=2이면 셋째 줄은 비어 있다.
지워지지 않은 숫자는 주어진 트리의 암호와 일치한다. 모든 테스트 케이스의 n을 더한 값은 30000을 넘지 않는다.
테스트 케이스마다 한 줄에, 지워진 숫자를 입력에 나온 순서대로 공백 하나로 구분해 출력한다. 지워진 숫자가 하나도 없으면 빈 줄을 출력한다.