#include <bits/stdc++.h>
using namespace std;
const int INF = 2034567891;
const long long int INF64 = 4234567890123456789ll;
long long int gcd(long long int a, long long int b) {
  return (b == 0 ? a : gcd(b, a % b));
}
long long int lcm(long long int a, long long int b) {
  return (a * (b / gcd(a, b)));
}
vector<vector<long long int> > v;
set<long long int> s;
long long int k;
bool solve() {
  long long int t = v.size();
  for (long long int i = 0; i < t; i++) {
    long long int sum = 0;
    for (long long int j = 0; j < k; j++) {
      sum += v[i][j];
    }
    if (!sum) return true;
  }
  for (long long int i = 0; i < t; i++) {
    for (long long int j = i + 1; j <= t - 1; j++) {
      long long int sum = 0, f = 0;
      for (long long int l = 0; l < k; l++) {
        sum = v[i][l] + v[j][l];
        if (sum > 1) f = 1;
      }
      if (!f) return true;
    }
  }
  for (long long int i = 0; i < t; i++) {
    for (long long int j = i + 1; j <= t - 1; j++) {
      for (long long int m = j + 1; m <= t - 1; m++) {
        long long int sum = 0, f = 0;
        for (long long int l = 0; l < k; l++) {
          sum = v[i][l] + v[j][l] + v[m][l];
          if (sum > 1) f = 1;
        }
        if (!f) return true;
      }
    }
  }
  for (long long int i = 0; i < t; i++) {
    for (long long int j = i + 1; j <= t - 1; j++) {
      for (long long int m = j + 1; m <= t - 1; m++) {
        for (long long int p = m + 1; p <= t - 1; p++) {
          long long int sum = 0, f = 0;
          for (long long int l = 0; l < k; l++) {
            sum = v[i][l] + v[j][l] + v[m][l] + v[p][l];
            if (sum > 2) f = 1;
          }
          if (!f) return true;
        }
      }
    }
  }
  return false;
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  ;
  long long int n, x;
  cin >> n >> k;
  for (long long int i = 0; i < n; i++) {
    vector<long long int> tm;
    for (long long int j = 0; j < k; j++) {
      cin >> x;
      tm.push_back(x);
    }
    long long int no = 0, l = 0;
    for (long long int p = tm.size() - 1; p >= 0; p--) {
      if (tm[p] == 1) no += pow(2, l);
      l++;
    }
    if (s.find(no) == s.end()) {
      s.insert(no);
      v.push_back(tm);
    }
  }
  if (solve())
    cout << "YES";
  else
    cout << "NO";
}
