#include<iostream>
#include <fstream>
#include <algorithm>
#include <cmath>
#include <string>
using namespace std;

int cnt(int x){if (x==0) return 0; return cnt(x&(x-1)) +1;}
const int dx[]={0,0,-1,1};
const int dy[]={1,-1,0,0};
#define For(i,a,b) for(int i=a;i<b;i++)
int n,m;
string s[100];
int a[100][100];
int bfs(int x, int y){
	if (x<0 || x>=n || y<0 || y>=m) return 9999999;
	if (a[x][y]>0) return a[x][y];
	if (s[x][y]=='#') return 99999999;
	if (s[x][y]=='E') return 0;
	a[x][y]=9999999;
	int ret=9999999;
	For(i,0,4)
		ret=min(ret,bfs(x+dx[i],y+dy[i])+1);
	return a[x][y]=ret;
}

int main(){
	ifstream fin("DATA5.txt");
	ofstream fout("OUT5.txt");
	int V,H;
	fin >> n >> m;
	for(int i=0;i<n;i++)
		fin >> s[i];
	memset(a,-1,sizeof(a));
	For(i,0,n) For(j,0,m) if (s[i][j]=='V') V= min(V,bfs(i,j));
	memset(a,-1,sizeof(a));
	For(i,0,n) For(j,0,m) if (s[i][j]=='H') H= min(H,bfs(i,j));	
	if (2*H<V) fout << "escape" << endl;
	else fout << H << endl;
	fin.close(); fout.close();
	return 0;
}
