#include<bits/stdc++.h>
using namespace std;
char a[305][305];
char b;
string s;
bool vis[305][305];
int x=150,y=150,mxx=150,mxy=150,mnx=150,mny=150;
int main()
{
	memset(a,'#',sizeof(a));
	a[150][150]='.';
	bool f=1;
	int g=0;
	while(1){
		if(g==4){
			cout<<"END"<<endl;
			cout<<mxx-mnx+3<<" "<<mxy-mny+3<<endl;
			for(int i=mnx-1;i<=mxx+1;i++){
				for(int j=mny-1;j<=mxy+1;j++)
					cout<<a[i][j]<<" ";
				cout<<endl;
			}
			return 0;
		}
		if(f==1){
			cout<<"LEFT"<<endl;
			cin>>b;
		}
		cout<<"GO"<<endl;
		cin>>s;
		if(s=="FAIL")f=1,g++;
		else{
			f=0;
			if(b=='N')y--,mny=min(mny,y);
			else if(b=='S')y++,mxy=max(mxy,y);
			else if(b=='E')x++,mxx=max(mxx,x);
			else x--,mnx=min(mnx,x);
			a[x][y]='.';
			vis[x][y]=1;
			g=0;
		}
	}
	return 0;
}