	#include <bits/stdc++.h>
	using namespace std;
	#define ll long long int
	#define fast ios_base::sync_with_stdio(false);  cin.tie(NULL); cout.tie(NULL);
	#define scan(a,n) for(long long int index=0;index<n;index++) cin>>a[index];
	#define print(a,n) for(long long int index=0;index<n;index++) cout<<a[index]<<" ";cout<<endl;
	#define mod 1000000007
	#define pb push_back
	#define mp make_pair
	#define ss second
	#define ff first
	#define vli vector<long long int>
	#define vlli vector<pair<long long int,long long int>>
	#define vsi vector<string>
	#define all(n) n.begin(),n.end()
	#define forn(i,a,b) for(i=a;i<b;i++)
	ll mul(ll x,ll y){  return (x*y)%mod;}
	ll power(ll x, ll y) {ll res = 1; x %= mod;
	 while (y) {if (y & 1)res = mul(res, x); y >>= 1; x = mul(x, x);} return res;}
	ll mod_inv(ll x) {return power(x, mod - 2);}
	ll fact(ll n) {ll res = 1; for (ll i = 2; i <= n; i++) res = mul(res , i); return res; } 
	ll nCr(ll n, ll r) { return mul(fact(n),mod_inv(mul(fact(r),fact(n - r))));} 

	 
	int main() {
	  fast;
	  #ifndef ONLINE_JUDGE
	  freopen("input.txt","r",stdin);
	  freopen("output.txt","w",stdout);
	  #endif
	  ll t=1;
	  // cin>>t;
	  while(t--){
	   ll n,m,x,y;
	   cin>>n>>m>>x>>y;
	   x--;y--;
	   string s[n];
	   scan(s,n);
	   ll ans=1,i;
	   // cout<<x<<" "<<y<<endl;
	   i=x+1;
	   while(i<n){
	        if(s[i][y]=='.') ans++;
	        else break;
	        i++;
	   }
	   i=x-1;
	   while(i>=0){
	        if(s[i][y]=='.') ans++;
	        else break;
	        i--;
	   }
	   i=y-1;
	   while(i>=0){
	        if(s[x][i]=='.') ans++;
	        else break;
	        i--;
	   }
	   i=y+1;
	   while(i<m){
	        if(s[x][i]=='.') ans++;
	        else break;
	        i++;
	   }
	   cout<<ans<<endl;
	    
	  }
	return 0;    
	 }  
/*{{{*/
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<string>
#include<iostream>
#include<sstream>
#include<set>
#include<map>
#include<queue>
#include<bitset>
#include<vector>
#include<limits.h>
#include<assert.h>
#define SZ(X) ((int)(X).size())
#define ALL(X) (X).begin(), (X).end()
#define REP(I, N) for (int I = 0; I < (N); ++I)
#define REPP(I, A, B) for (int I = (A); I < (B); ++I)
#define FOR(I, A, B) for (int I = (A); I <= (B); ++I)
#define FORS(I, S) for (int I = 0; S[I]; ++I)
#define RS(X) scanf("%s", (X))
#define SORT_UNIQUE(c) (sort(c.begin(),c.end()), c.resize(distance(c.begin(),unique(c.begin(),c.end()))))
#define GET_POS(c,x) (lower_bound(c.begin(),c.end(),x)-c.begin())
#define CASET int ___T; scanf("%d", &___T); for(int cs=1;cs<=___T;cs++)
#define MP make_pair
#define PB emplace_back
#define MS0(X) memset((X), 0, sizeof((X)))
#define MS1(X) memset((X), -1, sizeof((X)))
#define LEN(X) strlen(X)
#define F first
#define S second
using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
typedef long double LD;
typedef pair<int,int> PII;
typedef vector<int> VI;
typedef vector<LL> VL;
typedef vector<PII> VPII;
typedef pair<LL,LL> PLL;
typedef vector<PLL> VPLL;
template<class T> void _R(T &x) { cin >> x; }
void _R(int &x) { scanf("%d", &x); }
void _R(int64_t &x) { scanf("%lld", &x); }
void _R(double &x) { scanf("%lf", &x); }
void _R(char &x) { scanf(" %c", &x); }
void _R(char *x) { scanf("%s", x); }
void R() {}
template<class T, class... U> void R(T &head, U &... tail) { _R(head); R(tail...); }
template<class T> void _W(const T &x) { cout << x; }
void _W(const int &x) { printf("%d", x); }
void _W(const int64_t &x) { printf("%lld", x); }
void _W(const double &x) { printf("%.16f", x); }
void _W(const char &x) { putchar(x); }
void _W(const char *x) { printf("%s", x); }
template<class T,class U> void _W(const pair<T,U> &x) {_W(x.F); putchar(' '); _W(x.S);}
template<class T> void _W(const vector<T> &x) { for (auto i = x.begin(); i != x.end(); _W(*i++)) if (i != x.cbegin()) putchar(' '); }
void W() {}
template<class T, class... U> void W(const T &head, const U &... tail) { _W(head); putchar(sizeof...(tail) ? ' ' : '\n'); W(tail...); }
#ifdef HOME
 #define DEBUG(...) {printf("[DEBUG] ");W(__VA_ARGS__);}
#else
 #define DEBUG(...)
#endif
int MOD = 1e9+7;
void ADD(LL& x,LL v){x=(x+v)%MOD;if(x<0)x+=MOD;}
/*}}}*/
const int SIZE = 1<<20;
LL N,K;
void solve() {
    while(K--){
        if(N%200==0)N/=200;
        else N=N*1000+200;
    }
    W(N);
}
void input() {
    R(N,K);
}
int main(){
    input();
    solve();
    return 0;
}
