#include using namespace std; using ll = long long; int main(){ int N, W, w, v; cin >> N >> W; vector dp(W+1); for (int i=0; i pd(W+1); cin >> w >> v; for (int j=0; j<=W; j++){ pd[j] = max(pd[j], dp[j]); if (j+w <= W) pd[j+w] = max(pd[j+w], dp[j]+v); } swap(dp, pd); } for (int i=1; i<=W; i++) cout << dp[W]-dp[W-i]+1 << '\n'; return 0; }