어느 학교에서 학생들이 공부에는 너무 많은 시간을, 사교에는 너무 적은 시간을 쓴다고 판단하여, 모든 학생에게 친구를 한 명씩 지정해 주기로 했다.
친구 관계는 한 방향이다. 예를 들어 Janet이 Sarah의 친구로 지정되면 Janet은 Sarah에게 친근하게 대해야 하지만, Sarah가 그 마음을 똑같이 돌려줄 의무는 없다.
친구는 컴퓨터가 학생 번호를 이용해 지정하며, 모든 학생은 정확히 한 명의 친구를 배정받는다. 이 과정에서 때때로 친구 원(circle of friends) 이 생긴다. 예를 들어 Marc에게 Fred가, Fred에게 Lori가, Lori에게 Jean이, Jean에게 Marc이 배정되면 Marc, Fred, Lori, Jean 네 사람이 하나의 친구 원을 이룬다.
이러한 원 안에서 한 학생으로부터 다른 학생까지의 분리도(separation) 는, 앞 학생에서 시작해 뒤 학생에 도달하기까지 따라가야 하는 친구 관계의 단계 수에서 1을 뺀 값이다. 위 예에서 Marc의 분리도는 Fred까지 $0$, Lori까지 $1$, Jean까지 $2$, 그리고 다시 Marc까지 $3$이다. Marc으로 되돌아오려면 원을 한 바퀴 모두 돌아야 하기 때문이다.
컴퓨터의 친구 배정이 주어질 때, 질의로 주어지는 각 학생 쌍에 대해 두 학생이 같은 친구 원에 속하는지 판단하고, 그렇다면 앞 학생에서 뒤 학생까지의 분리도를 구하라.
첫 줄에 학생 수를 나타내는 정수 $n$ ($2 \le n \le 9999$)이 주어진다.
이어지는 $n$개의 줄에는 각각 친구 배정 $x\ y$ ($1 \le x \le 9999$, $1 \le y \le 9999$, $x \ne y$)가 주어진다. 이는 학생 $x$에게 학생 $y$가 친구로 배정되었음을(즉 $x$가 $y$에게 친근하게 대해야 함을) 뜻한다. 모든 학생은 정확히 한 명의 친구를 배정받는다.
친구 배정 다음에는 하나 이상의 질의 줄이 이어지며, 각 줄에는 공백 하나로 구분된 두 학생 번호가 있다. 각 질의마다 두 학생이 같은 친구 원에 속하는지, 그렇다면 그 분리도가 얼마인지 판단해야 한다. 입력은 0 0으로만 이루어진 줄로 끝나며, 이 줄은 질의가 아니다.
각 질의마다 한 줄에 결과를 출력한다. 두 학생이 같은 친구 원에 속하지 않으면 No를, 속하면 Yes 뒤에 공백 하나와 앞 학생에서 뒤 학생까지의 분리도를 출력한다.