#include <bits/stdc++.h>
using namespace std;
const long long oo = 1e18 + 10;
const long long mod = 1e9 + 7;
long long n, m;
long long binpow(long long a, long long n) {
  long long res = 1;
  while (n) {
    if (n & 1) res *= a;
    res %= mod;
    a *= a;
    a %= mod;
    n >>= 1;
  }
  return res;
}
int main() {
  cin >> n >> m;
  m = max(n, m);
  cout << binpow(2, m) << endl;
  return 0;
}
