#include<bits/stdc++.h>
#pragma GCC optmize(3)
#define int long long
#define lowbit(x) ((x)&(-x))
using namespace std;
int m,n;
constexpr int MOD = 100000000;
int pic[15][15],ans;
int dp[15][1<<15];
int g[15];
signed main() {
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin >> n >> m;
for(int i=1; i<=n; ++i) {
for(int j=1; j<=m; ++j) {
int t;
cin >> t;
if(t == 1) g[i] += (1<<(j-1));
}
}
dp[0][0] = 1;
for(int i=1;i<=n;++i){
for(int a=0;a<(1<<m);++a){
if( (!(a&(a>>1))) && (!(a&(a<<1)) && (((g[i-1] & a )== a))) ){
for(int b=0;b<(1<<m);++b){
if((a&b) || (b&(b>>1)) || (b&(b<<1)) || ((g[i] & b )!= b)) continue;
dp[i][b] = (dp[i][b] + dp[i-1][a]) % MOD;
}
}
}
}
for(int i=0;i<(1<<n);++i){
ans = (ans + dp[n][i]) % MOD;
}
cout << ans;
return 0;
}