N,D,K = map(int,input().split()) def check(i): if K==1: if i==D: return True else: return False if D<=i+((2*N-K+2)*(K-1))//2: return True else: return False if D<((K+1)*K)//2 or D>((2*N-K+1)*K)//2: print(-1) else: A = [] for i in range(1,N+1): if check(i): A.append(i) D -= i K -= 1 if K==0:break print(*A)