n,m,s,t=gets.split.map &:to_i o=[] m.times{a,b,c=gets.split.map &:to_i;o<<[a,b,c]<<[b,a,c]} d=[1e9]*n d[t]=0 n.times{o.map{|a,b,c|x=c+d[b];d[a]>x&&d[a]=x}} (print s,' ';s=o.map{|a,b,c|s!=a||d[a]