def make3d(a, b, c): return [[[0] * c for _ in range(b)] for _ in range(a)] H, W = map(int, input().split()) A = [] for _ in range(H): A.append(list(map(int, input().split()))) dp = make3d(H+1, W+1, 2) dp[0][0][0] = A[0][0] A[0][0] = 0 for i in range(H): for j in range(W): for k in range(2): if dp[i][j][k] > A[i][j]: dp[i+1][j][k] = max(dp[i+1][j][k], dp[i][j][k] + A[i][j]) dp[i][j+1][k] = max(dp[i][j+1][k], dp[i][j][k] + A[i][j]) elif k == 0 and dp[i][j][k] > 0: dp[i+1][j][1] = max(dp[i+1][j][k], dp[i][j][k]) dp[i][j+1][1] = max(dp[i][j+1][k], dp[i][j][k]) for k in range(2): if dp[H-1][W-1][k] > A[H-1][W-1]: print('Yes') break else: print('No')