import sys from itertools import permutations from heapq import * input = lambda :sys.stdin.readline().rstrip() mi = lambda :map(int,input().split()) li = lambda :list(mi()) mod = 998244353 N = int(input()) A = li() most_left_mini = [i for i in range(N)] mini = [A[i] for i in range(N)] for i in range(N-1)[::-1]: if A[i] <= mini[i+1]: most_left_mini[i] = i mini[i] = A[i] else: most_left_mini[i] = most_left_mini[i+1] mini[i] = mini[i+1] dp = [0] * (N+1) dp[N] = 1 cum = [0] * (N+1) cum[N] = 1 for i in range(N)[::-1]: dp[i] = cum[most_left_mini[i]+1] cum[i] = (dp[i] + cum[i+1]) % mod print(dp[0])