#include <iostream>
#include <bits/stdc++.h>
#define mid (l+r)/2
const int mod = 1000000007;
using namespace std;
typedef long long ll;
int dp[100005]={0};
ll op[205][4]={0};
int main()
{
    memset(dp,-1,sizeof dp);
    dp[0]=0;
    int n,m;
    cin >> n >> m;
    for(int i=0;i<n;i++){
        cin >> op[i][0] >> op[i][1] >> op[i][2];
    }
    for(int i=0;i<n;i++){
        if(op[i][0]==1){
            for(int j=m;j>=0;j--){
                ll num = op[i][1]/100000;
                if(op[i][1]%100000)
                    num++;
                if(dp[j]!=-1)
                for(int k=1;k<=op[i][2];k++){
                    if(j+num*k<=m&&dp[j+num*k]==-1){
                        dp[j+num*k]=i+1;
                        continue;
                    }
                    break;
                }
            }
        }
        else{
//            for(int i=1;i<=m;i++)
//                cout << dp[i] << " \n"[i==m];
            for(int j=m;j>=0;j--){
                ll num = j ;
                if(dp[j]!=-1)
                for(int k=1;k<=op[i][2];k++){
                    num = num*op[i][1]/100000+(num*op[i][1]%100000!=0);
                    if(num<=m&&dp[num]==-1){
                        dp[num]=i+1;
                        continue;
                    }
                    break;
                }
            }
//            for(int i=1;i<=m;i++)
//                cout << dp[i] << " \n"[i==m];
        }
    }
    for(int i=1;i<=m;i++)
        cout << dp[i] << " \n"[i==m];
    return 0;
}
