#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a[100][50050],p=998244353;
ll pw(ll x,ll y){
    ll b=1;
    while(y){
        if(y&1) b=b*x%p;
        y/=2;
        x=x*x%p;
    }
    return b;
}
ll inv(int x){
    return pw(x,p-2);
}
int main(void){
    ll x,y=1,n,m,i,j,ans=0,s=1;
    cin>>n>>m;
    for(i=1;i<=n;i++){
        for(j=1;j<=m;j++) scanf("%lld",&a[i][j]);
    }
    for(i=1;i<=n;i++){
        y=y*inv(i)%p;
        s=s*i%p;
    }
    for(i=1;i<=m;i++){
        vector<ll>v;
        for(j=1;j<=n;j++) v.push_back(a[j][i]);
        sort(v.begin(),v.end());
        x=1;
        for(j=0;j<n;j++) x=x*max(min(v[j],n+1)-j-1,0ll)%p;
        x=(s-x+p)%p*y%p;
        ans=(ans+x)%p;
    }
    printf("%lld",ans);
}