#include using namespace std; typedef long long ll; typedef pair pii; vector transpose(vector& old) { int n = old.size(), m = old[0].size(); vector res(m, string(n, ' ')); for (int y=0; y rotate(vector& old) { int n = old.size(), m = old[0].size(); vector res(m, string(n, ' ')); for (int y=0; y& grid) { int n = grid.size(), m = grid[0].size(); ll res = 0; vector> dp(n, vector(m, 0)); for (int y=1; y& grid) { /*for (int y=0; y> n >> m; vector grid(n); for (int i=0; i> grid[i]; ll result = 0; debug(grid); result += solve(grid); grid = transpose(grid); debug(grid); result += solve(grid); grid = rotate(grid); debug(grid); result += solve(grid); grid = transpose(grid); debug(grid); result += solve(grid); cout << result << endl; }