#include <bits/stdc++.h>
using namespace std;
long long fastxp(long long b, long long e) {
  if (e == 1)
    return b;
  else {
    long long ans = fastxp(b, e / 2);
    ans = (ans * ans) % 998244353;
    if (e % 2 == 1) {
      ans = (ans * b) % 998244353;
    }
    return ans;
  }
}
int main() {
  ios::sync_with_stdio(false);
  long long i, j, l, r;
  cin >> i >> j >> l >> r;
  long long v = fastxp(r - l + 1, i * j);
  if ((i * j) % 2 == 1) {
    cout << v << endl;
  } else {
    if ((r - l) % 2 == 1) {
      cout << (v * fastxp(2, 998244353 - 2)) % 998244353 << endl;
    } else {
      cout << ((v + 1) * fastxp(2, 998244353 - 2)) % 998244353 << endl;
    }
  }
}
