N,D,K = map(int,raw_input().split()) dp = [None]*(D+1+N) dp[0] = [] for i in xrange(K): for j in reversed(xrange(D)): if dp[j] == None: continue for k in xrange(1,N+1): if k in dp[j]: continue tmpv = dp[j] + [k] if dp[j+k] is None or not (len(tmpv) <= len(dp[j+k]) and tmpv >= dp[j+k]): dp[j+k] = tmpv print -1 if dp[D] == None or len(dp[D]) != K else " ".join(map(str,sorted(dp[D])))