mod = 998244353 dp = [ [0] * 2026 for i in range(2026) ] dp[0][0] = 1 for i in range(2025): for j in range(2026): if dp[i][j] == 0: continue if j != 2025: dp[i+1][j+1] += dp[i][j] dp[i+1][j+1] %= mod if j != 0: dp[i+1][j-1] += dp[i][j] dp[i+1][j-1] %= mod dic = {} def get_divs(X): if X in dic: return dic[X] ret = [] for i in range(1,X+1): if i*i > X: break if i*i == X: ret.append(i) elif X % i == 0: ret.append(i) if X//i < 2026: ret.append(X//i) dic[X] = ret return ret TT = int(input()) ANS = [] for loop in range(TT): N,A = map(int,input().split()) divs = get_divs(A) ans = 0 for d in divs: ans += dp[N-1][d] ans %= mod ANS.append(ans) print (*ANS,sep="\n")