def binom(n,k):
	if k<0 or k>n:return 0
	if k>n-k:k=n-k
	ret=1
	for i in range(k):ret=ret*(n-i)
	for i in range(k):ret=ret//(i+1)
	return ret


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

if I>1:
	ans=[]
	sum=0
	tmp=I
	for n in reversed(range(1,I+2*int(N**0.5))):
		now=binom(n,tmp)
		if sum+now<=N:
			sum+=now
			ans.append(n)
			tmp-=1
			if sum==N or tmp==0:break
	assert sum==N
	print(*ans)

else:
	print(N)