#include <bits/stdc++.h>
using namespace std;
const int M = 1e3 + 10;
const long long int MOD = 998244353;
long long int xi, yi, xi2, yi2, dps, dp[M][M], a;
int R, C, n, m, i, j;
vector<pair<long long int, pair<int, int> > > v;
long long int pw(long long int x, long long int y) {
  if (!y) return 1;
  long long int p = pw(x, y / 2);
  if (y % 2) return p * p % MOD * x % MOD;
  return p * p % MOD;
}
int main() {
  cin >> n >> m;
  for (i = 1; i <= n; i++)
    for (j = 1; j <= m; j++) scanf("%lld", &a), v.push_back({a, {i, j}});
  sort(v.begin(), v.end());
  for (i = 0; i < v.size(); i = j + 1) {
    for (j = i + 1; j < v.size(); j++)
      if (v[j].first != v[i].first) break;
    j--;
    for (int k = i; k <= j; k++) {
      long long int x = v[k].second.first, y = v[k].second.second;
      dp[x][y] = pw(i, MOD - 2) *
                 (dps + x * x % MOD * i % MOD + y * y % MOD * i % MOD + xi2 +
                  yi2 - (xi * x * 2) % MOD - (yi * y * 2) % MOD) %
                 MOD;
    }
    for (int k = i; k <= j; k++) {
      long long int x = v[k].second.first, y = v[k].second.second;
      (dps += dp[x][y]) %= MOD;
      (xi += x) %= MOD;
      (yi += y) %= MOD;
      (xi2 += x * x) %= MOD;
      (yi2 += y * y) %= MOD;
    }
  }
  cin >> R >> C;
  cout << (dp[R][C] + MOD) % MOD << endl;
  return 0;
}
