#include //define fin cin //define fout cout #define F first #define S second #define pii pair < int , int > using namespace std; const int nmax = 37; const int inf = 1e9 + 10; int N , M , K , L; int a , b , c , d; int i , j , k , l; int ii , jj , kk , ll; int act , ans; int v[nmax][nmax][nmax][nmax]; int main() { #ifndef ONLINE_JUDGE freopen("input.in","r",stdin); freopen("output.out","w",stdout); #endif // ONLINE_JUDGE /* ifstream fin("input.in"); ofstream fout("output.out"); */ scanf("%d %d %d %d", &N, &M, &K, &L); scanf("%d %d %d %d", &a, &b ,&c, &d); for (i = 1; i <= N; ++i) for (j = 1; j <= M; ++j) for (k = 1; k <= K; ++k) for (l = 1; l <= L; ++l) scanf("%d", &v[i][j][k][l]); a--; b--; c--; d--; ans = inf; for (i = 1; i <= N - a; ++i) for (j = 1; j <= M - b; ++j) for (k = 1; k <= K - c; ++k) for (l = 1; l <= L - d; ++l) { act = -inf; for (ii = i; ii <= i + a; ++ii) for (jj = j; jj <= j + b; ++jj) for (kk = k; kk <= k + c; ++kk) for (ll = l; ll <= l + d; ++ll) act = max(act , v[ii][jj][kk][ll]); ans = min(ans , act); } printf("%d\n", ans); return 0; }