#include <iostream>
#include <vector>
using namespace std;

const int MOD = 1e9 + 7;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);

    int n, k;
    cin >> n >> k;

    vector<int> dp(k + 1);
    dp[0] = 1;

    for (int i = 1; i <= k; i++) {
        dp[i] = (dp[i - 1] * 2 + 1) % MOD;
    }

    cout << (1LL * dp[k] * n) % MOD;

    return 0;
}
