#include <bits/stdc++.h>
using namespace std;
const int MAXN = 7294 , MAXM = 15;
int sum[MAXN];
int main () {
ifstream fin ( "elimin.in" );
ofstream fout ( "elimin.out" );
int m , n , r , c , li , co , pow , summ , maxs , i;
fin >> m >> n >> r >> c;
int mat[m][n];
if ( m < n ) {
for ( li = 0 ; li < m ; li++ )
for ( co = 0 ; co < n ; co++ )
fin >> mat[li][co];
pow = ( 1 << m );
maxs = -1;
for ( i = 0 ; i < pow ; i++ )
if ( __builtin_popcount ( i ) == r ) {
for ( li = 0 ; li < m ; li++ )
for ( co = 0 ; co < n ; co++ )
if ( ( i & ( 1 << li ) ) == 0 )
sum[co] = sum[co] + mat[li][co];
sort ( sum , sum + n );
summ = 0;
for ( co = c ; co < n ; co++ )
summ = summ + sum[co];
maxs = max ( maxs , summ );
for ( co = 0 ; co < n ; co++ )
sum[co] = 0;
}
fout << maxs << '\n';
}
else {
for ( li = 0 ; li < m ; li++ )
for ( co = 0 ; co < n ; co++ )
fin >> mat[li][co];
pow = ( 1 << n );
maxs = -1;
for ( i = 0 ; i < pow ; i++ )
if ( __builtin_popcount ( i ) == c ) {
for ( li = 0 ; li < m ; li++ )
for ( co = 0 ; co < n ; co++ )
if ( ( i & ( 1 << co ) ) == 0 )
sum[li] = sum[li] + mat[li][co];
sort ( sum , sum + m );
summ = 0;
for ( li = r ; li < m ; li++ )
summ = summ + sum[li];
maxs = max ( maxs , summ );
for ( li = 0 ; li < m ; li++ )
sum[li] = 0;
}
fout << maxs << '\n';
}
return 0;
}