#include using namespace std; struct P {int x;int y;};P cp,w,r[502][502];int n, m, s, l;int b[502][502],v[502][502],c[502][502],fr[502][502]; P xy(P p, int ak) {P wq;switch(ak){case 0: wq.x = p.x;wq.y = p.y + 1;break;case 1: wq.x = p.x + 1;wq.y = p.y;break;case 2: wq.x = p.x;wq.y = p.y - 1;break; case 3: wq.x = p.x - 1;wq.y = p.y;break;}return wq;}int gh(P p){if((p.x == w.x) && (p.y == w.y) && l > 2){l++;return 1;}return 0;} int tw(P p){return fr[p.x][p.y] == 0 ? 0 : c[p.x][p.y] == 1 ? 0 : 1;} int aa(){int f = 0;for(int z=0;z<4;z++){P g = xy(cp, s);if(gh(g)){ while((cp.x!=w.x)||(cp.y!=w.y)){v[cp.x][cp.y]=1;cp=r[cp.x][cp.y];} v[cp.x][cp.y]=1;return 1;}if(tw(g)){P h = cp;cp = g;r[cp.x][cp.y]= h;c[h.x][h.y] = 1;l++;f = 1;break;}s = (s + 1)%4;} if(!f){fr[cp.x][cp.y]=0;l--;cp=r[cp.x][cp.y];}return 0;} int main(){cin>>n>>m;char st[m+1];for(int j=0;j>st;for(int j=1;j= 4)v[i][j]=1;}int k=0; for(int i=1;i