#include <bits/stdc++.h>

using namespace std;
vector<vector<bool> > visited;
vector<string> mapa;
int n,m;
char tierra;
int xx[]={0,0,1,-1};
int yy[]={1,-1,0,0};
int dfs(int x,int y){
    int ans=0;
    if(x>=0&&x<m && y>=0&&y<n){

        if(mapa[x][y]!=tierra || visited[x][y]){
            return 0;
        }
        visited[x][y]=true;
        ans++;
        for(int i=0;i<4;i++){
            ans+=dfs((x+xx[i]),(y+yy[i]+n)%n);
        }
    }
    return ans;
}
int main(){

    while(cin>>m>>n){
        mapa.resize(m);
        visited.assign(m,vector<bool>(n,false));
        for(int i=0;i<m;i++){
            cin>>mapa[i];
        }
        int x,y;
        cin>>x>>y;
        tierra= mapa[x][y];
        dfs(x,y);
        int maxi=0;
        for(int i=0;i<m;i++){
            for(int j=0;j<n;j++){
                maxi=max(maxi,dfs(i,j));
            }
        }
        cout<<maxi<<endl;

    }
    return 0;

}
