#include <vector>
class Robot {
const int mod = 1000000007;
vector<vector<int>> ways;
int dfs(vector<vector<int>> map, int x, int y){
if(ways[x][y] != -1) return ways[x][y];
if(x==0 || y ==0) return 0;
if(map[x-1][y-1] == 0 ) return 0;
if(x==1 && y ==1) return 1;
int count =(dfs(map, x-1, y) + dfs(map, x, y-1))%mod;
ways[x][y] = count;
return count;
}
public:
int countWays(vector<vector<int> > map, int x, int y) {
// write code here
ways = vector<vector<int>>(x+1, vector<int>(y+1, -1));
return dfs(map, x, y);
}
};