#include<iostream>
#include<cstdio>

int w,h,i,j,m[16][16],d[16][16];

int f(int x,int y){
	if(~d[y][x])return d[y][x];
	if(m[y][x]==1)return 0;
	if(y>=h)return 1;
	
	int r=0;
	if(!m[y][x]){for(int i=-1;i<2;i++)r+=x+i>0&&x+i<=w&&!(m[y+1][x+i]==2&&i!=0)?f(x+i,y+1):0;return d[y][x]=r;}
	return d[y][x]=f(x,y+2);
}

int main(){
	while(std::cin>>w>>h,w){
		for(i=17;--i;)for(j=17;--j;)d[i][j] = -1;
		for(;i++<h;)for(j=w;j;j--)std::cin >> m[i][j];
		for(int i=w;i;i--)j+=f(i, 1);
		std::cout<<j<<'\n';
	}
}