/* Author : Nguyen Thanh Tung */
#include <bits/stdc++.h>
#define endl '\n'
#define int long long
using namespace std;
typedef pair<int, int> ii;
const int N = 3e3 + 7;
const long long oo = 1e18 + 7;
const long long MOD = 1e9 + 7;
int n, s, w[N], v[N], b[N], a[N];
int d = 0;
int dp[N][N];
void input() {
cin >> n >> s;
for(int i = 1; i <= n; ++i) {
cin >> w[i] >> v[i] >> b[i] >> a[i];
d += (b[i] + a[i]);
}
}
void sub2() {
for(int i = 1; i <= n; ++i) {
for(int j = 1; j <= s; ++j) {
dp[i][j] = dp[i - 1][j];
if(w[i] <= j) {
dp[i][j] = max(dp[i][j], dp[i][j - w[i]] + v[i]);
}
}
}
cout << dp[n][s];
}
void sub3() {
vector<int> f(s + 1, 0);
for(int i = 1; i <= n; ++i) {
for(int j = s; j >= w[i]; --j) {
int maxk = (j / w[i]);
for(int k = 1; k <= maxk; ++k) {
int tmp = f[j - k * w[i]] + k * v[i] - a[i] * k * k + b[i] * (k > 0);
f[j] = max(f[j], tmp);
}
}
}
cout << f[s];
}
#define TASK "code"
signed main () {
ios_base::sync_with_stdio (false);
cin.tie(nullptr), cout.tie(nullptr);
input();
if(d == 0) {
return sub2(), 0;
}
if(n <= 3000 && s <= 3000) {
return sub3(), 0;
}
return 0;
}
LyogQXV0aG9yIDogTmd1eWVuIFRoYW5oIFR1bmcgKi8KCiNpbmNsdWRlIDxiaXRzL3N0ZGMrKy5oPgoKI2RlZmluZSBlbmRsIAkJICAgICAgICAgJ1xuJwojZGVmaW5lIGludCAJCSAgICAgICAgIGxvbmcgbG9uZwoKdXNpbmcgbmFtZXNwYWNlIAkgICAgICAgICBzdGQ7Cgp0eXBlZGVmIHBhaXI8aW50LCBpbnQ+ICAgICAgIGlpOwoKY29uc3QgaW50ICAgICAgIE4gICAgICAgICAgICA9IDNlMyArIDc7CmNvbnN0IGxvbmcgbG9uZyBvbyAgICAgICAgICAgPSAxZTE4ICsgNzsKY29uc3QgbG9uZyBsb25nIE1PRCAgICAgICAgICA9IDFlOSArIDc7CgppbnQgbiwgcywgd1tOXSwgdltOXSwgYltOXSwgYVtOXTsKaW50IGQgPSAwOwppbnQgZHBbTl1bTl07Cgp2b2lkIGlucHV0KCkgewogICAgY2luID4+IG4gPj4gczsKICAgIGZvcihpbnQgaSA9IDE7IGkgPD0gbjsgKytpKSB7CiAgICAgICAgY2luID4+IHdbaV0gPj4gdltpXSA+PiBiW2ldID4+IGFbaV07CiAgICAgICAgZCArPSAoYltpXSArIGFbaV0pOwogICAgfQp9Cgp2b2lkIHN1YjIoKSB7CiAgICBmb3IoaW50IGkgPSAxOyBpIDw9IG47ICsraSkgewogICAgICAgIGZvcihpbnQgaiA9IDE7IGogPD0gczsgKytqKSB7CiAgICAgICAgICAgIGRwW2ldW2pdID0gZHBbaSAtIDFdW2pdOwogICAgICAgICAgICBpZih3W2ldIDw9IGopIHsKICAgICAgICAgICAgICAgIGRwW2ldW2pdID0gbWF4KGRwW2ldW2pdLCBkcFtpXVtqIC0gd1tpXV0gKyB2W2ldKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGNvdXQgPDwgZHBbbl1bc107Cn0KCnZvaWQgc3ViMygpIHsKICAgIHZlY3RvcjxpbnQ+IGYocyArIDEsIDApOwogICAgZm9yKGludCBpID0gMTsgaSA8PSBuOyArK2kpIHsKICAgICAgICBmb3IoaW50IGogPSBzOyBqID49IHdbaV07IC0taikgewogICAgICAgICAgICBpbnQgbWF4ayA9IChqIC8gd1tpXSk7CiAgICAgICAgICAgIGZvcihpbnQgayA9IDE7IGsgPD0gbWF4azsgKytrKSB7CiAgICAgICAgICAgICAgICBpbnQgdG1wID0gZltqIC0gayAqIHdbaV1dICsgayAqIHZbaV0gLSBhW2ldICogayAqIGsgKyBiW2ldICogKGsgPiAwKTsKICAgICAgICAgICAgICAgIGZbal0gPSBtYXgoZltqXSwgdG1wKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGNvdXQgPDwgZltzXTsKfQoKI2RlZmluZSBUQVNLICJjb2RlIgoKc2lnbmVkIG1haW4gKCkgewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyAoZmFsc2UpOwogICAgY2luLnRpZShudWxscHRyKSwgY291dC50aWUobnVsbHB0cik7CiAgICBpbnB1dCgpOwogICAgaWYoZCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIHN1YjIoKSwgMDsKICAgIH0KICAgIGlmKG4gPD0gMzAwMCAmJiBzIDw9IDMwMDApIHsKICAgICAgICByZXR1cm4gc3ViMygpLCAwOwogICAgfQogICAgcmV0dXJuIDA7Cn0K