# 解説を見た。 # 最初、bit DPで解けるのでは? と思って制約をちゃんと見なかったのは愚か。 import sys input = sys.stdin.readline N,X=list(map(int,input().split())) A=list(map(int,input().split())) B=[(A[i],i) for i in range(N)] B.sort(reverse=True) C=B[:20] D=B[20:] NOW=1 DP=[1] SUM=0 for a,_ in D: NOW=NOW|(NOW<X: continue if X-score>SUM: continue if (1<<(X-score))&DP[-1]!=0: NOW=(1<<(X-score)) for i in range(len(D)-1,-1,-1): a=D[i][0] ind=D[i][1] if DP[i] & (NOW>>a) != 0: ANS[ind]=1 NOW>>=a #print(ANS) for j in range(len(ANS)): if ANS[j]==1: ANS[j]="o" else: ANS[j]="x" print("".join(ANS)) exit() print("No")