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")