N=int(input())# number of nodesM=int(input())# number of edgesstart=int(input())goal=int(input())G=[[]for_inrange(N)]for_inrange(M):u,v=map(int,input(),split())G[u].append(v)# G[v].append(u) # for undirectedhas_visited=set()defDFS(graph,node):has_visited.add(node)forneighboringraph[node]:ifneighborinhas_visited:continueelse:DFS(graph,neighbor)DFS(G,start)ifgoalinhas_visited:print("reachable")else:print("unreachable")