#include <bits/stdc++.h> using namespace std; int mma[1000][1000],la[1000][1000],mix = 10000,miy = 10000,maax = -11,may = -11; int ds[1000],dx[5] = {0,0,-1,0,1},dy[5] = {0,1,0,-1,0}; void dfs(int x,int y,int d) { mix = min(x,mix); miy = min(y,miy); maax = max(x,mix); may = max(y,may); bool t = false; for(int i = 1;i <= 4;i++) { if(mma[x + dx[d]][y + dy[d]] == 0) { cout << "GO" << endl; string s; cin >> s; if(s[0] == 'S') { mma[x + dx[d]][y + dy[d]] = 2; dfs(x + dx[d],y + dy[d],d); t = true; } else { mma[x + dx[d]][y + dy[d]] = 1; } } d = d % 4 + 1; cout << "LEFT" << endl; string s; cin >> s; } string s; cout << "LEFT" << endl; cin >> s; cout << "LEFT" << endl; cin >> s; cout << "GO" << endl; cin >> s; return; } int main() { ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); //freopen("p1.in","r",stdin); //freopen("p1.out","w",stdout); ds['N'] = 1; ds['W'] = 2; ds['S'] = 3; ds['E'] = 4; mma[500][500] = 2; int x = 500,y = 500,d; string s; cout << "LEFT" << endl; cin >> s; d = ds[s[0]]; dfs(x,y,d); cout << "END" << endl; for(int i = miy;i <= may;i++) { for(int j = mix;j <= maax;j++) { if(mma[j][i] == 1) cout << '*'; else cout << '.'; } cout << endl; } return 0; }