import sys, math sys.set_int_max_str_digits(0) from collections import deque N = list(input()) A = list(input()) A = deque(A) while A and A[0] == '1': A.popleft() while A and A[-1] == '0': A.pop() A = list(A) if len(A) == 0: exit(print(1)) from itertools import groupby def runLengthEncode(S): grouped = groupby(S) res = [] for k, v in grouped: res.append((k, int(len(list(v))))) return res data = runLengthEncode(A) L = len(data) MOD = 998244353 ans = 1 for i in range(L//2): _, zero = data[2*i] _, one = data[2*i+1] ans *= zero+one+1 if ans >= MOD: ans %= MOD print(ans%MOD)