#include <bits/stdc++.h>
using namespace std;
const int maxn = 4000100, mod = 998244353;
inline void Add(int &a, int b) { a = a + b >= mod ? a + b - mod : a + b; }
inline int ksm(int a, int b) {
  int res = 1;
  for (; b; b >>= 1, a = 1ll * a * a % mod)
    if (b & 1) res = 1ll * res * a % mod;
  return res;
}
int fac[maxn], invfac[maxn], n, m, per;
inline int C(int n, int m) {
  return 1ll * fac[n] * invfac[m] % mod * invfac[n - m] % mod;
}
int main() {
  for (int i = fac[0] = 1; i < maxn; i++) fac[i] = 1ll * fac[i - 1] * i % mod;
  invfac[maxn - 1] = ksm(fac[maxn - 1], mod - 2);
  for (int i = maxn - 2; i >= 0; i--)
    invfac[i] = 1ll * invfac[i + 1] * (i + 1) % mod;
  scanf("%d%d", &n, &m);
  per = (1ll * n * ksm(m + 1, mod - 2) + 1) % mod;
  int ans = 0;
  for (int i = 1; i <= n; i++) {
    int P = 1ll * i * ksm(i + m, mod - 2) % mod;
    int cnt = 1ll * C(n, i) * ksm(P, mod - 2) % mod;
    if (i & 1)
      Add(ans, cnt);
    else
      Add(ans, mod - cnt);
  }
  ans = 1ll * ans * per % mod;
  cout << ans << endl;
  return 0;
}
