#include<bits/stdc++.h>
using namespace std;
int T,N,M,p[1000][10000];
int f[100000],maxn=0;
int main()
{
scanf("%d%d%d",&T,&N,&M);
for(int j=1;j<=T;j++)
for(int i=1;i<=N;i++)scanf("%d",&p[j][i]);
maxn=M;
for(int i=1;i<=M;i++)f[i]=i;
for(int t=2;t<=T;t++)
{
// memset(f,0,sizeof f);
//for(int i=1;i<=maxn;i++)f[i]=i;
for(int i=1;i<=N;i++)
for(int j=p[t-1][i];j<=maxn;j++)
f[j]=max(f[j],f[j-p[t-1][i]]+p[t][i]);
maxn=f[maxn];
}
cout<<maxn;
}