N,INTK = map(int, input().split()) INTK+=1 K = str(INTK) K = K.zfill(N) A = [0] + list(map(int, input().split())) for i in range(int(K[0]),10): if A[i]>0: break else: print(-1) exit() ANS = [] for i in range(N): v = int(K[i]) for j in range(v,10): if A[j]>0: ANS.append(j) A[j]-=1 if j!=v: for k in range(len(ANS),N): for j in range(10): if A[j]>0: ANS.append(j) A[j]-=1 print(''.join(map(str, ANS))) exit() break else: while len(ANS)>0: v = ANS.pop() A[v]+=1 for j in range(ANS[-1]+1,10): if A[j]>0: ANS.append(j) A[j]-=1 for k in range(len(ANS),N): for j in range(10): if A[j]>0: ANS.append(j) A[j]-=1 print(''.join(map(str, ANS))) exit() if len(ANS)==0: print(-1) exit() print(''.join(map(str, ANS)))