N = int(input()) T = int(input()) A = list(map(int, input().split())) memo = {} def dfs(p, s, ops) -> bool: if s > T: return False if p == N: if s == T: print(''.join(ops)) return True return False if (p, s) in memo: return False memo[p, s] = True ops[p] = '+' if dfs(p+1, s+A[p], ops): return True ops[p] = '*' if dfs(p+1, s*A[p], ops): return True return False ops = [''] * N dfs(1, A[0], ops)