#include<stdio.h>
#include<string.h>
#define max(a,b) (a>b?a:b)
int dp[100][10000];
int n,w;
int a[100],b[100]; // a[i] 数值 b[i] 个数
int main() {
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(dp,-1,sizeof(dp)); // 很关键!!!
scanf("%d %d",&n,&w);
for(int i=0;i<n;i++) {
scanf("%d %d",&a[i],&b[i]);
printf("i %d %d\n",a[i],b[i]);
}
dp[0][0] = 0; // 很关键!!
for(int i=0;i<n;i++) {
for(int j=0;j<=w;j++) {
if(dp[i][j]>=0) dp[i+1][j] = b[i];
else if(j<a[i] || dp[i+1][j-a[i]]<=0 ) dp[i+1][j] = -1;
else dp[i+1][j] = dp[i+1][j-a[i]]-1;
}
}
for(int i=0;i<=n;i++) {
for(int j=0;j<=w;j++) {
printf("%d ",dp[i][j]);
}
printf("\n");
}
return 0;
}