n, k = map(int, input().split()) t = list(map(int, input())) cnt = [-1] * (n + 1) def solve(i): if cnt[i] != -1: return cnt[i] if i == n: cnt[i] = 1 return 1 if t[i] == 0: cnt[i] = 0 return 0 cnt[i] = solve(i + 1) if i != n - 1 and t[i] * 10 + t[i + 1] <= 26: cnt[i] += solve(i + 2) return min(10**18 + 2525, cnt[i]) solve(0) p = 0 k -= 1 ans = [] while p < n: if k < cnt[p + 1]: ans.append(chr(96 + t[p])) p += 1 else: c = t[p] * 10 + t[p + 1] ans.append(chr(96 + c)) k -= cnt[p + 1] p += 2 assert k == 0 print(*ans, sep="")