import sys from collections import deque def main(): n, m = map(int, sys.stdin.readline().split()) s, t, k = map(int, sys.stdin.readline().split()) adj = [[] for _ in range(n + 1)] for _ in range(m): a, b = map(int, sys.stdin.readline().split()) adj[a].append(b) adj[b].append(a) color = [-1] * (n + 1) distance = [-1] * (n + 1) q = deque([s]) color[s] = 0 distance[s] = 0 while q: u = q.popleft() for v in adj[u]: if color[v] == -1: color[v] = 1 - color[u] distance[v] = distance[u] + 1 q.append(v) # Check bipartite parity condition s_color = color[s] t_color = color[t] valid_parity = True if (s_color == t_color and k % 2 != 0) or (s_color != t_color and k % 2 != 1): valid_parity = False if not valid_parity: print("No") return # Check connectivity if distance[t] == -1: print("Unknown") return l = distance[t] if k >= l and (k - l) % 2 == 0: print("Yes") else: print("Unknown") if __name__ == "__main__": main()