#include using namespace std; using ll = long long; #define rep(i, n) for (int i = 0; i < (int)(n); i++) void solve() { ll h, w; cin >> h >> w; vector a(h); rep(i, h) cin >> a[i]; ll ans = 0; rep(S, (1ll << (h + w - 2))) { ll ci = 0, cj = 0, cnt = 1; bool ok = true; rep(k, (h + w - 2)) { if ((S >> k) & 1) { ci++; } else { cj++; } if (h <= ci || w <= cj) { ok = false; break; } if (a[ci][cj] == 'o') { cnt++; } if (a[ci][cj] == 'x') { cnt--; } if (cnt < 0 || a[ci][cj] == '#') { ok = false; break; } } if (ok) ans++; } cout << ans << '\n'; } int main() { std::cin.tie(nullptr); std::ios_base::sync_with_stdio(false); int T = 1; for (int t = 0; t < T; t++) { solve(); } return 0; }