""" 提出のbyte数で解法を悟られないようにするためのダミー aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa """ n,k = map(int,input().split()) m = 10 ** 9 + 7 print(((pow(n,k,m) - pow(n - 1,k,m)) * n) % m)