#include <bits/stdc++.h>
using namespace std;
#define rep(i,a,n) for(int i=a; i<(n); i++)
#define rrep(i,a,b) for(int i=a;i>=b;i--)
#define fore(i,a) for(auto i:a)
#define all(a) a.begin(),a.end()
#define rall(a) a.rbegin(),a.rend()
using Int = long long;
const Int INF = 1LL << 60;
const int inf = 1001001001;
vector<int> dxs = {1, 0, -1, 0};
vector<int> dys = {0, 1, 0, -1};
struct Edge{
Int to, w;
Edge(Int to, Int w) : to(to), w(w) {}
};
int main(){
    int n,m;
    cin>>n>>m;
    vector<int> sum(n,0);
    rep(i,0,m){
        rep(j,0,n){
            int a;
            cin>>a;
            sum[j]+=a;
        }
        int right=0;
        int cnt=sum[0];
        bool ok=false;
        rep(left,0,n){
            while(cnt<777&&right<n-1){
                right++;
                cnt+=sum[right];
            }
            if(cnt==777)ok=true;
            cnt-=sum[left];

        }
        if(ok){
            cout<<"YES"<<endl;
            return 0;
        }
    }
    cout<<"NO"<<endl;
    return 0;
}