未知错误
#include<bits/stdc++.h>
#define MOD 100000000
#define N 13
#define M 13
using namespace std;
int n,m;
bool a[N][M];
int f[N][5000];
int ok[5000],p;
inline void pre( ){
cin>>n>>m;
int i,j;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
cin>>a[i][j];
}
inline void get_ok( ){
int i,j;
bool flag;
for(i=0;i<1<<m;i++){
flag=0;
for(j=1;j<m;j++)
if(i>>j&1&&i>>j-1&1){
flag=1;
break;
}
if(!flag)ok[++p]=i;
}
}
inline bool right(int aa,int b,int k){
int i;
for(i=0;i<m;i++)
if((aa>>i&1&&b>>i&1)||(!a[k][i+1]&&b>>i&1)||(aa>>i&1&&!a[k-1][i+1]))return 0;
return 1;
}
inline void dp( ){
int i,j,k;
for(j=1;j<=p;j++)
if(0,ok[i],1)
f[1][j]=1;
for(i=2;i<=n;i++)
for(j=1;j<=p;j++)
for(k=1;k<=p;k++)
if(right(ok[j],ok[k],i))f[i][k]=f[i][k]+f[i-1][j]%MOD;
}
inline void final( ){
int ans=0,i;
for(i=1;i<=p;i++)
ans=ans+f[n][i]%MOD;
cout<<ans<<endl;
}
int main( ){
std::ios::sync_with_stdio(0);
pre( );
get_ok( );
dp( );
final( );
}