#include<bits/stdc++.h>
#define int long long
#define endl "\n"
using namespace std;
const int N=1e5+5;
int r,c;
int sx,sy;
int ans;
int dx[]={-1,0,1,0};
int dy[]={0,1,0,-1};
vector<char> a[N];
vector<bool> vis[N];
struct node{
int x,y;
};
bool check(int x,int y){
if(x>=1&&x<=r&&y>=1&&y<=c&&vis[x][y]==0&&a[x][y]!='*');
}
void bfs(){
queue<node> Q;
Q.push({sx,sy});
while(Q.size()){
node u=Q.front();
Q.pop();
for(int i=0;i<4;i++){
int xx=u.x+dx[i];
int yy=u.y+dy[i];
if(check(xx,yy)){
vis[xx][yy]=1;
if(a[xx][yy]=='S'){
ans+=1;
}else if(a[xx][yy]=='M'){
ans+=5;
}else if(a[xx][yy]=='L'){
ans+=10;
}
Q.push({xx,yy});
}
}
}
return ;
}
signed main(){
cin>>r>>c;
for(int i=0;i<r;i++){
for(int j=0;j<c;j++){
char m;
cin>>m;
a[i].push_back(m);
vis[i].push_back(0);
}
}
cin>>sx>>sy;
bfs();
cout<<ans;
return 0;
}