정점 개의 트리가 주어진다. 두 정점 , 사이의 거리를 라 하자.
정점 에 대한 거울 연산은 다음과 같이 정의된다.
- 현재 정점이 일 때, 와 다른 정점 중에서 를 만족하는 정점 를 하나 골라 로 이동한다.
- 만약 그런 정점 가 존재하지 않으면, 정점 에 대한 거울 연산을 시행할 수 없다.
길이 의 수열 이 주어진다. 처음에 임의의 정점 하나를 시작 정점으로 고를 수 있다.
시작 정점을 적절히 고르고, 정점 에 대한 거울 연산을 순서대로 모두 시행하여 트리의 어떤 정점에 도달하는 것이 가능한지 판별하여라.
Input
입력은 다음과 같은 형식으로 주어진다.
입력으로 들어오는 는 두 정점 사이에 간선이 있음을 뜻한다.
Output
조건을 만족하는 시작 정점과 이동 방법이 존재하면 YES를 출력한다. 그렇지 않으면 NO를 출력한다.
Constraints
- 주어진 간선들은 트리를 이룬다.
Subtasks
Samples
예제 1
입력
3 1
1 2
2 3
2
출력
YES
예제 2
입력
1 1
1
출력
NO
예제 3
입력
4 2
1 2
1 3
1 4
1 1
출력
YES