MOD = 998244353 N = int(input()) A = list(map(int, input().split())) if N == 0: print(1) else: current_L = 1 current_R = A[0] ways = 1 for i in range(1, N): a_i = A[i] entry_min = max(current_L, 1) entry_max = min(current_R, a_i) if entry_max < entry_min: print(0) exit() count = entry_max - entry_min + 1 ways = (ways * count) % MOD current_L = 1 current_R = a_i print(ways)