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)