import java.io.*;
class queen {
public int Func(char m[][],int f[][],int x,int y)
{
int t;
f[y][x]=0;
if(m[y][x]=='E')
{
m[y][x]='*';
return -1;
}
m[y][x]='!';
if(x<9&&m[y][x+1]!='#'&&f[y][x+1]==1)
{
m[y][x]='*';
if((t=Func(m,f,x+1,y))==1)
{
m[y][x]='!';
}
else if(t==-1)
return -1;
}
if(y<9&&m[y+1][x]!='#'&&f[y+1][x]==1)
{
m[y][x]='*';
if((t=Func(m,f,x,y+1))==1)
{
m[y][x]='!';
}
else if(t==-1)
return -1;
}
if(x>0&&m[y][x-1]!='#'&&f[y][x-1]==1)
{
m[y][x]='*';
if((t=Func(m,f,x-1,y))==1)
{
m[y][x]='!';
}
else if(t==-1)
return -1;
}
if(y>0&&m[y-1][x]!='#'&&f[y-1][x]==1)
{
m[y][x]='*';
if((t=Func(m,f,x,y-1))==1)
{
m[y][x]='!';
}
else if(t==-1)
return -1;
}
if(m[y][x]=='!')
return 1;
return 0;
}
}
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader cin = new BufferedReader(new InputStreamReader(System.in));
char m[][]=new char[10][10],t;
int f[][]=new int[10][10];
queen q=new queen();
int px=0,py=0;
String a;
for(int i=0;i<10;i++)
{
a=cin.readLine();
for(int j=0;j<10;j++)
{
f[i][j]=1;
m[i][j]=a.charAt(j);
if(m[i][j]=='S')
{
px=i;py=j;
}
}
}
q.Func(m,f,px,py);
for(int i=0;i<10;i++)
{
for(int j=0;j<10;j++)
System.out.print(m[i][j]);
System.out.print("\n");
}
}
}
/**************************************************************
Problem: 2144
User: admin
Language: Java
Result: Accepted
Time:443 ms
Memory:34784 kb
****************************************************************/