#include using namespace std; #define int long long #define db double #define gcd(a,b) __gcd(a,b) #define lcm(a,b) a*b / __gcd(a,b) #define I first #define II second #define pb push_back #define ii pair const int INF = 2 * 1e9; const int N = 2e5 + 1; const int MOD = 998244353; int pw(int a, int b) { int res = 1; while (b) { if (b & 1) res = (res * a) % MOD; b /= 2; a = (a * a) % MOD; } return res; } int32_t main() { #define TASKNAME "test" ios_base::sync_with_stdio(0); cin.tie(0); if (fopen(TASKNAME ".inp","r" )) { freopen(TASKNAME ".inp","r",stdin); freopen(TASKNAME ".out","w",stdout); } int h, w; cin >> h >> w; cout << pw(2, (h - 1) * (w - 1) + 2); return 0; }