N, I = map(int, input().split())
"""
N = 110
F = [1] * N
E = [1] * N
for i in range(2, N):
    F[i] = F[i-1]*i

def comb(a, b): #組合せ
    if b < 0:
        return 0
    if a < b:
        return 0
    return F[a] // F[b] // F[a-b]
"""

from sys import setrecursionlimit as srl

def make(N, I):
    if N == 0:
        return
    if I == 1:
        Ans.append(N)
        return
    tmp = 1
    for i in range(1, I+1):
        tmp *= i
    now = tmp
    nx = I+1
    mx = 1
    while now <= tmp * N:
        pre = now
        now //= mx
        now *= nx
        mx += 1
        nx += 1
    Ans.append(nx-2)
    make(N-pre//tmp, I-1)

Ans = []
make(N, I)
print(*Ans)