#include using namespace std; typedef long long ll; typedef pair pii; typedef pair pll; #define pb push_back #define mp make_pair #define rep(i,n) for(int i=0;i<(n);++i) constexpr int mod=1000000007; constexpr int mod1=998244353; vector dx={0,1,0,-1},dy={-1,0,1,0}; bool inside(int y,int x,int h,int w){ if(y=0 && x=0) return true; return false; } int main(){ cin.tie(0); ios::sync_with_stdio(false); int h,w;cin >> h >> w; vector s(h); rep(i,h) cin >> s.at(i); bool ok = true; rep(i,h){ bool black = false, white = false; rep(j,w){ if(s[i][j] == '0') black = true; else white = true; } if(!black || !white) ok = false; } if(ok){ cout << "YES" << endl; return 0; } ok = true; rep(i,w){ bool black = false, white = false; rep(j,h){ if(s[j][i] == '0') black = true; else white = true; } if(!black || !white) ok = false; } if(ok) cout << "YES" << endl; else cout << "NO" << endl; }