#include<bits/stdc++.h>
using namespace std;
int t,maxp,w;
int dp[2001][2001];
int ap[2001];
int bp[2001];
int as[2001];
int bs[2001];
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cin>>t>>maxp>>w;
for(int i=0;i<t;i++){
cin>>ap[i]>>bp[i]>>as[i]>>bs[i];
}
memset(dp,-0x3f,sizeof dp);
for(int i=0;i<=as[0];i++){
dp[0][i]=-i*ap[0];
}
for(int i=1;i<t;i++){
for(int j=0;j<=maxp;j++){
for(int u=0;u<=i-w-1;u++){
for(int v=j;v<=min(maxp,j+bs[i]);v++){
dp[i][j]=max(dp[i][j],dp[u][v]+(v-j)*bp[i]);
}
for(int v=max(0,j-as[i]);v<j;v++){
dp[i][j]=max(dp[i][j],dp[u][v]-(j-v)*ap[i]);
}
}
}
}
int ans=0;
for(int i=0;i<=maxp;i++){
ans=max(ans,dp[t-1][i]);
}
cout<<(ans==-0x3f3f3f3f?0:ans);
return 0;
}