func_code_string: #include  bits/stdc++.h    #define int long long    using namespace std ;   const int M=998244353,mxM=5e4  ;   int d[21][mxM+1],n,m,p,iv[21],f1[21],f2[21];   signed main(){    cin >> n >> m  ;    for(int i=0;i<n;i++)     for(int j=0;j<m;j++)      cin >> d[i][j]  ;    iv[1]=1 ;    for(int i=2;i<n+1;i++)     iv[i]=M-M/i*iv[M%i]%M ;    f1[0]=f2[0]=1 ;    for(int i=1;i<n+1;i++){     f1[i]=f1[i-1]*i%M  ;     f2[i]=f2[i-1]*iv[i]%M ;    }    p=m*f1[n]%M ;    for(int j=0;j<m;j++){     vector<int>a ;     for(int i=0;i<n;i++)      a.push_back(d[i][j]) ;     sort(a.begin(),a.end()) ;     int c=1 ;     for(int i=0;i<n;i++){      if(a[i]-i-1<=0){       c=0 ;break ;      }      (c*=(a[i]-i-1))%=M  ;     }     p=(p-c+M)%M  ;    }    cout << (p*f2[n])%M<<   n  ;   }   