func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 3e5 + 2;   const long long mod = 998244353;   long long fpow(long long a, long long b) {     if (b == 0) return 1;     long long cur = fpow(a, b >> 1);     cur *= cur;     cur %= mod;     if (b & 1) cur *= a;     return cur % mod;   }   int main() {     ios_base::sync_with_stdio(0);     cin.tie(0);     cout.tie(0);     long long n, m, L, R;     cin >> n >> m >> L >> R;     long long dif = R - L + 1;     long long par = 0, impar = 0;     if (L & 1)       impar = dif >> 1ll, par = dif - impar;     else       par = dif >> 1ll, impar = dif - par;     if (n * m & 1)       cout << fpow(par + impar, n * m) <<   n ;     else       cout << ((((fpow(par + impar, n * m) + fpow(par - impar, n * m)) *                  fpow(2, mod - 2)) %                 mod) +                mod) %                   mod            <<   n ;   }   