#include using namespace std; #if __has_include() #include using namespace atcoder; #endif template void print(const T& a, const Ts&... b){cout << a;(cout << ... << (cout << ' ', b));cout << '\n';} template void input(T&... a){(cin >> ... >> a);} void print(){cout << '\n';} typedef long long ll; typedef long double ld; typedef pair P; typedef tuple T; typedef modint998244353 mint; #define rep(i, n) for(ll i = 0; i < n; i++) int main() { cin.tie(nullptr); ios_base::sync_with_stdio(false); ll t; input(t); while(t--){ ll n,x; input(n,x); mint ans = 0; if(x%2 == 1){ ans = (n+1)/2; // print((n%2 == 1 ? "Alice" : "Bob")),0; } else { ans = (n/(x+1))*(x/2+1) + ((n%(x+1))+1)/2 + ((n%(x+1)) == x ? 1 : 0); // if(n%x == 0)print("Alice"); // else print( ((n%(x-1))%2 == 1 ? "Alice" : "Bob") ); } print(ans.val()); } return 0; }