#include <iostream>
using namespace std;
int main
() { int t
,n
,m
,cnt
,cnt1
,flag
,time=0; short int res
; unsigned long int st
; unsigned long int b
;
cin>>t; cnt=t; res=new short int*[t];
while(t
) { cnt1
=0; time=0;
cin>>n;
cin>>m;
cin>>b;
res[cnt-t]=new short int[m+1];
//allocation
st=new unsigned long int*[m];
for(int i=0;i<m;i++)
{
st[i]=new unsigned long int[4];
}
for(int i=0;i<m;i++)
{
cin>>st[i][0];
cin>>st[i][1];
cin>>st[i][2];
st[i][3]=0;
}
unsigned long int min;
int dest=0,minj=-1;
for(int i=0;i<m && time<b;i++)
{
min=1000000001;
for(int j=0;j<m;j++)
{
if(st[j][0]==dest && min>st[j][2] && !st[j][3])
{
min=st[j][2];
minj=j;
}
}
st[minj][3]=1;
flag=1;
for(int k=0;k<cnt1;k++)
{
if(res[cnt-t][k]==st[minj][1])
{
flag=0;
}
}
if(flag)
{
res[cnt-t][cnt1++]=st[minj][1];
}
dest=st[minj][1];
}
res[cnt-t][cnt1]=-1;
//deallocation
for(int i=0;i<m;i++)
{
delete [] st[i];
}
delete [] st;
t--;
}
int j; for(int i=0;i<cnt;i++) { j=0; while(res[i][j]!=-1) { cout<<res[i][j++]<<" "; } cout<<"-1"; cout<<"\n"; }
for(int i=0;i<cnt;i++) { delete [] res[i]; } delete [] res;
return 0; }
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7IGludCB0LG4sbSxjbnQsY250MSxmbGFnLHRpbWU9MDsgc2hvcnQgaW50IHJlczsgdW5zaWduZWQgbG9uZyBpbnQgc3Q7IHVuc2lnbmVkIGxvbmcgaW50IGI7CgpjaW4+PnQ7IGNudD10OyByZXM9bmV3IHNob3J0IGludCpbdF07Cgp3aGlsZSh0KSB7IGNudDE9MDsgdGltZT0wOwoKY2luPj5uOwpjaW4+Pm07CmNpbj4+YjsKCnJlc1tjbnQtdF09bmV3IHNob3J0IGludFttKzFdOwoKLy9hbGxvY2F0aW9uCnN0PW5ldyB1bnNpZ25lZCBsb25nIGludCpbbV07CmZvcihpbnQgaT0wO2k8bTtpKyspCnsKICBzdFtpXT1uZXcgdW5zaWduZWQgbG9uZyBpbnRbNF07Cn0KCmZvcihpbnQgaT0wO2k8bTtpKyspCnsKICBjaW4+PnN0W2ldWzBdOwogIGNpbj4+c3RbaV1bMV07CiAgY2luPj5zdFtpXVsyXTsKICBzdFtpXVszXT0wOwp9Cgp1bnNpZ25lZCBsb25nIGludCBtaW47CmludCBkZXN0PTAsbWluaj0tMTsKCgpmb3IoaW50IGk9MDtpPG0gJiYgdGltZTxiO2krKykKewogIG1pbj0xMDAwMDAwMDAxOwogIGZvcihpbnQgaj0wO2o8bTtqKyspCiAgewogICAgIGlmKHN0W2pdWzBdPT1kZXN0ICYmIG1pbj5zdFtqXVsyXSAmJiAhc3Rbal1bM10pCiAgICAgewogICAgICAgbWluPXN0W2pdWzJdOwogICAgICAgbWluaj1qOwogICAgIH0KICB9CiAgc3RbbWlual1bM109MTsKICBmbGFnPTE7CiAgZm9yKGludCBrPTA7azxjbnQxO2srKykKICB7CiAgICBpZihyZXNbY250LXRdW2tdPT1zdFttaW5qXVsxXSkKICAgIHsKICAgICAgZmxhZz0wOwogICAgfQogIH0KCiAgaWYoZmxhZykKICB7CiAgICByZXNbY250LXRdW2NudDErK109c3RbbWlual1bMV07CiAgfQoKICBkZXN0PXN0W21pbmpdWzFdOwogIHRpbWUrPW1pbjsKfQoKcmVzW2NudC10XVtjbnQxXT0tMTsKCi8vZGVhbGxvY2F0aW9uCmZvcihpbnQgaT0wO2k8bTtpKyspCnsKICBkZWxldGUgW10gc3RbaV07Cn0KZGVsZXRlIFtdIHN0OwoKdC0tOwp9CgppbnQgajsgZm9yKGludCBpPTA7aTxjbnQ7aSsrKSB7IGo9MDsgd2hpbGUocmVzW2ldW2pdIT0tMSkgeyBjb3V0PDxyZXNbaV1baisrXTw8IiAiOyB9IGNvdXQ8PCItMSI7IGNvdXQ8PCJcbiI7IH0KCmZvcihpbnQgaT0wO2k8Y250O2krKykgeyBkZWxldGUgW10gcmVzW2ldOyB9IGRlbGV0ZSBbXSByZXM7CgpyZXR1cm4gMDsgfQo=