rt
#include <bits/stdc++.h>
using namespace std;
int T, N, M, A[103][103], dp[1005];
int main(){
scanf("%d%d%d", &T, &N, &M);
for (int i = 1; i <= T; i++) {
for (int j = 1; j <= N; j++) {
scanf("%d", &A[i][j]);
}
}
for (int k = 1; k < T; k++) {
for (int i = 0; i <= M; i++) {
dp[i] = i;
}
for (int i = 1; i <= N; i++) {
for (int j = A[k][i]; j <= M; j++ ){
dp[j] = max(dp[j], dp[j - A[k][i]] + A[k + 1][i]);
}
}
M = dp[M];
}
printf("%d", M);
return 0;
}