N,K=map(int,input().split()) MOD=10**9+7 R=pow(2,MOD-1-K,MOD) M=N if M%2==0: M//=2 A=pow(2,K-1,M)+M A%=M B=pow(2,K-1,MOD)-A B*=pow(M,MOD-2,MOD) B%=MOD for i in range(N): if N%2==0 and i%2==0: print(0) else: D=i+1 if i==0: D=N E=N-i+1 if D%2==1: D+=N if E%2==1: E+=N D//=2 E//=2 #print(M,D,E) ans=B*2 if A>=D: ans+=1 if A>=E: ans+=1 print((ans*R)%MOD)