#include<stdio.h>
#include<memory.h>
int w, h;
char m[110][110], s[110][110], go[310], co[310];
int DT[110][110][110][110];
int max(int a, int b){ return a>b?a:b; }
int f(int goX, int goY, int comeX, int comeY)
{
	if( DT[goX][goY][comeX][comeY] == -1 )
	{
		int s = 0;
		if(goX==h && goY == w && comeX == h && comeY == w )
			return m[h][w] == '*' ? 1:0;
		if( m[goX][goY] == '#' || m[comeX][comeY] == '#' ||
			m[goX][goY] == 0 || m[comeX][comeY] == 0 )
			return 0;
		if( m[goX][goY] == '*' ) s++;
		if( m[comeX][comeY] == '*' ) s++;
		if( s == 2 && goX == comeX && comeY == goY ) s=1;
		DT[goX][goY][comeX][comeY] = max( f(goX+1,goY,comeX+1,comeY), max(f(goX+1,goY,comeX,comeY+1),
			   max(f(goX,goY+1,comeX+1,comeY), f(goX,goY+1,comeX,comeY+1)))) + s;
	}
	return DT[goX][goY][comeX][comeY];
}
main()
{    // D = 1, R = 2, U = 3, L = 4  // °¥¶§´Â 1, ¿Ã¶§´Â 4°¡ ¿ì¼±
	freopen(".20.in","r",stdin);
	freopen(".20.out","w",stdout);
	int i, j, a, b, c, d, G = 0, C = 0;
	scanf("%d%d",&w,&h);

	memset(DT,-1,sizeof(DT));
	for( i = 1 ; i <= h ; i++ )
		 scanf("%s", &m[i][1]);
 	printf("%d\n", f(1,1,1,1));
 	for( i = a = b = c = d = 1 ; i <= w+h-2 ; i++ )
 	{
	 	 if( a<h&&c<h&&(DT[a+1][b][c+1][d] >= DT[a+1][b][c][d+1] &&
			 DT[a+1][b][c+1][d] >= DT[a][b+1][c+1][d] &&
			 DT[a+1][b][c+1][d] >= DT[a][b+1][c][d+1]) )
				go[G++] = 1, a++, co[C++] = 3, c++;
	 	 else if( a<h&&d<w&&(DT[a+1][b][c][d+1] >= DT[a+1][b][c+1][d] &&
			 DT[a+1][b][c][d+1] >= DT[a][b+1][c+1][d] &&
			 DT[a+1][b][c][d+1] >= DT[a][b+1][c][d+1]) )
				go[G++] = 1, a++, co[C++] = 4, d++;
	 	 else if( b<w&&c<h&&(DT[a][b+1][c+1][d] >= DT[a+1][b][c+1][d] &&
			 DT[a][b+1][c+1][d] >= DT[a+1][b][c][d+1] &&
			 DT[a][b+1][c+1][d] >= DT[a][b+1][c][d+1]) )
			 go[G++] = 2, b++, co[C++] = 3, c++;
	 	 else if( b<w&&d<w&&(DT[a][b+1][c][d+1] >= DT[a+1][b][c+1][d] &&
			 DT[a][b+1][c][d+1] >= DT[a+1][b][c][d+1] &&
			 DT[a][b+1][c][d+1] >= DT[a][b+1][c+1][d] ))
			 go[G++] = 2, b++, co[C++] = 4, d++;
	}
	for( i = 0 ; i < G ; i++ )
		 printf("%d ", go[i]);
    for( i = C-1 ; i >= 0  ; i-- )
    	 printf("%d ", co[i]);
}
