#include<bits/stdc++.h>
using namespace std;
struct node{
int lose;
int win;
int med;
}a[100005];
long long dp[100005];
int main(){
int n, m;
cin>>n>>m;
for(int i = 1; i <= n; i++){
cin>>a[i].lose>>a[i].win>>a[i].med;
}
for(int i = 1; i <= n; i++){
for(int j = m; j >= a[i].med; j--){
if(m >= a[i].med ){
dp[j] = max(dp[j] + a[i].lose , dp[j - a[i].med ] + a[i].win );
}else{
dp[j] += a[i].lose;
}
}
}
cout<< 5 * dp[m];
return n;
}