import sys

# for line in sys.stdin:
#     a = line.split()
#     print(int(a[0]) + int(a[1]))
input = sys.stdin.readline
n, m = list(map(int, input().split()))
g = [input().strip() for _ in range(n)]
st = [[False] * (m) for _ in range(n)]

def dfs(i, j):
    st[i][j] = True
    if i == n-1 and j == m-1:
        return True

    for x, y in [(i+1, j), (i-1, j), (i, j+1), (i, j-1)]:
        if 0 <= x < n and 0 <= y < m and not st[x][y] and g[x][y] == '.':
            if dfs(x, y):
                return True
    return False

if dfs(0, 0):
    print("Yes")
else:
    print("No")