#include<bits/stdc++.h>
using namespace std;
int n,m;
int am[100005],w[100005],v[100005];
int dp[10005][1005];
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>w[i]>>v[i]>>am[i];
}
for(int i=1;i<=n;i++){
for(int j=0;j<=m;j++){
for(int k=0;k<=am[i]&&k*w[i]<=j;k++){
dp[i][j]=max(dp[i][j],dp[i-1][j-k*w[i]]+k*v[i]);
}
}
}
int ans=0;
for(int i=1;i<=n;i++) ans=max(ans,dp[i][m]);
cout<<ans;
return 0;
}