N=gets.to_i T=gets.to_i A=gets.split.map &:to_i d=Array.new(N).map{Array.new(T)} d[0][A[0]]='' 1.upto(N-1){|i| 1.upto(T){|v| d[i][v*A[i]]=d[i-1][v]+'*'if d[i-1][v] && v*A[i]<=T && d[i-1][v]+'*'>(d[i][v*A[i]]||'') d[i][v+A[i]]=d[i-1][v]+'+'if d[i-1][v] && v+A[i]<=T && d[i-1][v]+'+'>(d[i][v+A[i]]||'') } } puts d[N-1][T]