N = int(input()) TAB = [tuple(map(int, input().split())) for _ in range(N - 1)] Q = int(input()) for x in list(map(int, input().split())): f = [1, x] for i in range(N - 1): t, a, b = TAB[i] if t == 1: f.append((f[a] + f[b]) % 998244353) elif t == 2: f.append((a * f[b]) % 998244353) else: f.append((f[a] * f[b]) % 998244353) print(f[N] % 998244353)