N, D, K = map(int, input().split()) def solve(N, D, K): if K > N: return [-1] minD = sum(range(1, K + 1)) maxD = sum(range(N, N - K, -1)) if D < minD or D > maxD: return [-1] ans = list(range(1, K + 1)) for idx in range(1, K+1): d = sum(ans) if d - ans[-idx] + N - idx + 1 >= D: ans[-idx] = D - d + ans[-idx] return ans ans[-idx] = N - idx + 1 return ans print(*solve(N, D, K))