#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1024;
const int MOD = 998244353;
int n, m, A[MAXN][MAXN], ans[MAXN][MAXN], initr, initc, r, c, r2, c2, ev, cnt;
vector<int> B;
vector<pair<int, int> > bucket[MAXN * MAXN];
int add(int a, int b) {
  a += b;
  if (a >= MOD) a -= MOD;
  return a;
}
int sub(int a, int b) {
  a -= b;
  if (a < 0) a += MOD;
  return a;
}
int mul(long long a, long long b) { return a * b % MOD; }
int expmod(int b, long long e) {
  if (!e) return 1;
  if (e & 1) return mul(b, expmod(b, e - 1));
  int k = expmod(b, e / 2);
  return mul(k, k);
}
int inv(int x) { return expmod(x, MOD - 2); }
int main() {
  while (scanf("%d %d", &n, &m) >= 1) {
    for (int i = (0); i < (int)(n); i++)
      for (int j = (0); j < (int)(m); j++) {
        scanf("%d", &A[i][j]);
        B.push_back(A[i][j]);
      }
    scanf("%d %d", &initr, &initc);
    --initr;
    --initc;
    sort(B.begin(), B.end());
    B.resize(unique(B.begin(), B.end()) - B.begin());
    for (int i = (0); i < (int)(n); i++) {
      for (int j = (0); j < (int)(m); j++) {
        int p = lower_bound(B.begin(), B.end(), A[i][j]) - B.begin();
        bucket[p].push_back({i, j});
      }
    }
    ev = r = c = r2 = c2 = cnt = 0;
    for (int i = (0); i < (int)(n * m); i++) {
      const vector<pair<int, int> > &V = bucket[i];
      for (int j = (0); j < (int)(((int)V.size())); j++) {
        int x = V[j].first;
        int y = V[j].second;
        ans[x][y] = ev;
        ans[x][y] = add(ans[x][y], r2);
        ans[x][y] = add(ans[x][y], c2);
        ans[x][y] = add(ans[x][y], mul(cnt, mul(x, x)));
        ans[x][y] = add(ans[x][y], mul(cnt, mul(y, y)));
        ans[x][y] = sub(ans[x][y], mul(2 * x, r));
        ans[x][y] = sub(ans[x][y], mul(2 * y, c));
        ans[x][y] = mul(ans[x][y], inv(cnt));
      }
      for (int j = (0); j < (int)(((int)V.size())); j++) {
        int x = V[j].first;
        int y = V[j].second;
        ev = add(ev, ans[x][y]);
        r = add(r, x);
        c = add(c, y);
        r2 = add(r2, mul(x, x));
        c2 = add(c2, mul(y, y));
      }
      cnt += ((int)V.size());
    }
    printf("%d\n", ans[initr][initc]);
  }
  return 0;
}
