#1228. 回家的路

回家的路

描述

小方小块小鸟发现,他们所在的街道都是横平竖直的,从空中俯视看,非常像一张方格表,由 n 行 m 列的方格组成。

小方的家在右下角,而学校在最左上角的格子中。 他每次只能往右或者往下走一个格子,毕竟不能走回头路。 街区附近在修路,就导致有些格子还不能走。 好在小方小块小鸟有一份地图,标注了哪些格子能走,哪些格子不能走。现在请你帮小方算算他这次回家一共有多少种走法吧。

输入输出格式

输入

第 1 行为 2 个正整数 n、m,用空格隔开,表示方格表的行数和列数; (1n,m1010 1 ≤ n, m ≤ 1010 )

随后n行,每行 m 个以空格分割的正整数 0 或 1,表示街区的地图。其中 0 表示正在修路,1 表示正常。

输出

一行,一个数,表示小方回家可选的路线总数。

由于这个答案很大,你只需要输出这个数除以 1,000,000,007的余数。

样例

3 4
1 0 1 1
1 1 1 1
1 1 1 1
4