#include <iostream>
#include <queue>
#include <cstring>
#include <cstdio>
using namespace std ;
int l,r,c ;
int d,e,f ;
int i,j,k ;
const int N=35 ;
char map[N][N][N] ;
int visit[N][N][N] ;
int xx[]={0,0,1,-1,0,0} ;
int yy[]={-1,1,0,0,0,0} ;
int zz[]={0,0,0,0,1,-1} ;
struct node
{
int x,y,z,step ;
};
int bfs(int d,int e,int f)
{
queue<node> q ;
q.push({d,e,f,0}) ;
while(q.size())
{
node t ;
t=q.front() ;
q.pop() ;
if(map[i][j][k]=='E') return t.step ;
else
{
for(int i=0;i<6;i++)
{
int idx=t.x+xx[i] ;
int idy=t.y+yy[i] ;
int idz=t.z+zz[i] ;
if(idx>=1&&idx<=l&&idy>=1&&idy<=r&&idz>=1&&idz<=c&&map[i][j][k]!='#'&&!visit[i][j][k])
{
if(map[i][j][k]=='E') return t.step+1 ;
else
{
visit[i][j][k]=1 ;
q.push({idx,idy,idz,t.step+1}) ;
}
}
}
}
}
return -1 ;
}
int main()
{
scanf("%d%d%d",&l,&r,&c) ;
memset(visit,0,sizeof(visit)) ;
memset(map,'0',sizeof(map)) ;
for(int i=1;i<=l;i++)
{
for(int j=1;j<=r;j++)
{
for(int k=1;k<=c;k++)
{
cin>>map[i][j][k] ;
if(map[i][j][k]=='S')
{
d=i,e=j,f=k ;
}
}
}
}
int cnt=bfs(d,e,f) ;
if(cnt==-1) printf("Trapped!") ;
else
{
if(cnt==1) printf("Escaped in 1 minute.") ;
else printf("Escaped in %d minute(s).",cnt) ;
}
return 0 ;
}