#include using namespace std; const int INF = 1e9; using ll = long long; using inv = vector; using stv = vector; using pint = pair; #define FOR(i,l,r) for(int i=(l); i<(r); i++) #define rep(i,r) for(int i=0; i<(r); i++) #define repl(i,r) for(long long i=0; i<(r); i++) #define FORl(i,l,r) for(long long i=(l); i<(r); i++) #define INFL ((1LL<<62)-(1LL<<31)) #define pb(x) push_back(x) #define CIN(x) cin >> x const ll MOD = 998244353LL; int main(){ int N; cin >> N; vector A(N); rep(i,N) cin >> A[i]; ll ans = 1LL; for(int i=N-1; i>= 1; i--){ ans = (ans*min(A[i],A[i-1]))%MOD; } cout << ans%MOD << endl; }