#include #include using namespace std; #define ll long long #define P (ll)(1000000007) ll mpow(ll base, ll pow) { ll res = 1; while (pow > 0) { if ((pow & 1) == 1) { res *= base; res %= P; } base *= base; base %= P; pow >>= 1; } return res; } int main() { ll n, m; cin >> n >> m; ll ans = mpow(2, m); ans = (ans - 1) * mpow(2, P - 2); ans %= P; cout << ans << endl; return 0; }