#include<bits/stdc++.h>
using namespace std;
#define int long long int
#define mp(a,b) make_pair(a,b)
#define vi vector<int>
#define mii map<int,int>
#define mpi map<pair<int,int>,int>
#define vp vector<pair<int,int> >
#define pb(a) push_back(a)
#define fr(i,n) for(i=0;i<n;i++)
#define rep(i,a,n) for(i=a;i<n;i++)
#define F first
#define S second
#define endl "\n"
#define fast std::ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define mod 1000000007
#define dom 998244353
#define pi 3.14159265
#define sl(a) (int)a.length()
#define sz(a) (int)a.size()
#define all(a) a.begin(),a.end()
#define pii pair<int,int> 
#define mini 2000000000000000000
#define time_taken 1.0 * clock() / CLOCKS_PER_SEC
//mt19937_64 mt(chrono::steady_clock::now().time_since_epoch().count());
//primes for hashing 937, 1013
template<typename T, typename U> static inline void amin(T &x, U y) 
{ 
    if (y < x) 
        x = y; 
}
template<typename T, typename U> static inline void amax(T &x, U y) 
{ 
    if (x < y) 
        x = y; 
}
vi a[250005];
int n,m;
vi solve(vi v, int x)
{
    int i,j,c;
    /*fr(i,m)
    cout<<v[i]<<" ";
    cout<<endl<<x<<endl;*/
    fr(i,n)
    {
        c=0;
        vi b;
        fr(j,m)
        {
            if(a[i][j]!=v[j])
            {
                b.pb(j);
                c++;
            }
        }
        if(c>4||(!x&&c>2))
        {
            vi w;
            w.pb(-1);
            return w;
        }
        if(c>2)
        {
            if(c==3)
            {
                vi w=v;
                w[b[0]]=a[i][b[0]];
                vi r=solve(w,x-1);
                if(r[0]!=-1)
                    return r;
                w[b[0]]=v[b[0]];
                w[b[1]]=a[i][b[1]];
                r=solve(w,x-1);
                if(r[0]!=-1)
                    return r;
                w[b[1]]=v[b[1]];
                w[b[2]]=a[i][b[2]];
                r=solve(w,x-1);
                if(r[0]!=-1)
                    return r;
                w.clear();
                w.pb(-1);
                return w;
            }
            else
            {
                if(x==1)
                {
                    vi w;
                    w.pb(-1);
                    return w;
                }
                vi w=v;
                w[b[0]]=a[i][b[0]];
                w[b[1]]=a[i][b[1]];
                vi r=solve(w,x-2);
                if(r[0]!=-1)
                    return r;
                w[b[0]]=v[b[0]];
                w[b[1]]=v[b[1]];

                w[b[0]]=a[i][b[0]];
                w[b[2]]=a[i][b[2]];
                r=solve(w,x-2);
                if(r[0]!=-1)
                    return r;
                w[b[0]]=v[b[0]];
                w[b[2]]=v[b[2]];

                w[b[0]]=a[i][b[0]];
                w[b[3]]=a[i][b[3]];
                r=solve(w,x-2);
                if(r[0]!=-1)
                    return r;
                w[b[0]]=v[b[0]];
                w[b[3]]=v[b[3]];

                w[b[1]]=a[i][b[1]];
                w[b[2]]=a[i][b[2]];
                r=solve(w,x-2);
                if(r[0]!=-1)
                    return r;
                w[b[1]]=v[b[1]];
                w[b[2]]=v[b[2]];

                w[b[1]]=a[i][b[1]];
                w[b[3]]=a[i][b[3]];
                r=solve(w,x-2);
                if(r[0]!=-1)
                    return r;
                w[b[1]]=v[b[1]];
                w[b[3]]=v[b[3]];

                w[b[2]]=a[i][b[2]];
                w[b[3]]=a[i][b[3]];
                r=solve(w,x-2);
                if(r[0]!=-1)
                    return r;
                w.clear();
                w.pb(-1);
                return w;
            }
        }
    }
    return v;
}
void shikhar7s(int cas)
{
    int i,j,c;
    cin>>n>>m;
    vi v;
    fr(i,n)
    {
        fr(j,m)
        {
            cin>>c;
            if(!i)
                v.pb(c);
            a[i].pb(c);
        }
    }
    v=solve(v,2);
    if(v[0]==-1)
        cout<<"No";
    else
    {
        cout<<"Yes"<<endl;
        fr(i,m)
        {
            cout<<v[i]<<" ";
        }
    }
}
signed main()
{
    fast;
    //freopen("input.txt", "rt", stdin);
    //freopen("output.txt", "wt", stdout);
    int t=1;
    //cin>>t;
    int cas=1;
    while(cas<=t)
    {
    shikhar7s(cas);
    cas++;
    }
    return 0;
}