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)