N, K = map(int, input().split())

V = [1]*N

def is_ok(arg):
    return arg*(K+1) <= K*(arg+K+1+(N-2))

def meguru_bisect(ng, ok):
    while (abs(ok - ng) > 1):
        mid = (ok + ng) // 2
        if is_ok(mid):
            ok = mid
        else:
            ng = mid
    return ok

laid = meguru_bisect(10**2000 + 1, 0)
V[-1] = laid
V[-2] = K+1
print(*V)