from collections import deque h, w = map(int, input().split()) a, si, sj = map(int, input().split()) b, ti, tj = map(int, input().split()) S = [list(input()) for _ in range(h)] visited = [[[False for _ in range(2001)] for _ in range(w)] for _ in range(h)] Directions = [(1, 0), (0, 1), (-1, 0), (0, -1)] Que = deque([(a, si, sj)]) visited[si][sj][a] = True while Que: cs, ci, cj = Que.popleft() for di, dj in Directions: ni, nj = ci + di, cj + dj if 0 <= ni < h and 0 <= nj < w: if S[ni][nj] == '.': ns = cs - 1 if ns == 0: continue else: ns = cs + 1 if ns > 2000: continue if visited[ni][nj][ns]: continue visited[ni][nj][ns] = True Que.append((ns, ni, nj)) if visited[ti][tj][b]: print("Yes") else: print("No")