#include <bits/stdc++.h>
using namespace std;
long long FastPower(long long a, long long b);
const long long Mod = 1000000007;
int main() {
  long long x, k;
  cin >> x >> k;
  if (x == 0)
    cout << "0";
  else if (k == 0)
    cout << (2 * x) % Mod;
  else {
    x = x % Mod;
    long long P = FastPower(2, k);
    cout << ((2 * ((P * x) % Mod)) % Mod - P + 1 + Mod) % Mod;
  }
}
long long FastPower(long long a, long long b) {
  if (!b) return 1;
  long long Res = FastPower(a, b >> 1) % Mod;
  Res = (Res * Res) % Mod;
  if (b & 1) Res *= a;
  return Res % Mod;
}
