mod=10**9+7 p,k=map(int,input().split()) z=[0]*(k+1) z[0]=1 for i in range(1,k+1): z[i]=(z[i-1]*(p+1) + (pow(2*p,i-1,mod)-z[i-1])*2)%mod print(z[k])