#include #include #define rep(i,n) for(int i=0;i vi; typedef vector vl; typedef vector> vvi; typedef vector> vvl; typedef pair P; typedef long double ld; using mint = modint998244353; mint calc(ll n, ll m, ll x){ m++; x++; ll p = m / (n - 1), q = m % (n - 1); ll a = x / (n - 1), b = x % (n - 1); mint loop = mint(p) * (n - 1) + mint(q); mint res = loop * a + mint(p) * (b) + mint(min(q, b)); return res; } void solve(){ ll n, m, l, r; cin >> n >> m >> l >> r; // rep(i, m + 1) cout << calc(n, m, i).val() << "\n"; cout << (calc(n, m, r) - calc(n, m, l - 1)).val() << "\n"; } int main(){ int t; cin >> t; rep(i, t) solve(); return 0; }