include[HTML_REMOVED]
using namespace std;
struct Good
{
int v,w;
};
int dp[2005];
int main ()
{
vector[HTML_REMOVED] goods;
int n,vmax;
cin>>n>>vmax;
for(int i=1;i<=n;i++){
int v,w,s;
cin>>v>>w>>s;
for(int k=1;k<=s;k=2){
goods.push_back({kv,kw});
s-=k;
}
if(s>0)goods.push_back({sv,s*w});
}
for(auto good:goods){
for(int j=vmax;j>=good.v;j–){
dp[j]=max(dp[j],dp[j-good.v]+good.w);
}
}
cout<<dp[vmax];
}