# https://yukicoder.me/problems/no/3003 import math MOD = 998244353 def main(): K = int(input()) lm = [] for _ in range(K): L, M = map(int, input().split()) lm.append((L, M)) n = 0 for l, m in lm: n += l * m def calc_factorial(n): ans = 1 for x in range(1, n + 1): ans *= x ans %= MOD return ans answer = calc_factorial(n) for l, m in lm: x0 = calc_factorial(l) inv_x0 = pow(x0, MOD - 2, MOD) x = pow(inv_x0, m, MOD) answer *= x answer %= MOD x0 = calc_factorial(m) inv_x0 = pow(x0, MOD - 2, MOD) answer *= inv_x0 answer %= MOD print(answer) if __name__ == "__main__": main()