#define MD 998244353
int b,c,d,e,m,r,z;
{
	int n,a;
	rd(n);
	b=m=1;
	r=MD+1>>1;
	rep(n){
		rd(a);
		b+=m;
		b-=b<MD?0:MD;
		m+=m;
		m-=m<MD?0:MD;
		r=(ll)(MD+1>>1)*r%MD;
		if(!a) b=c=d=e=0;
		if(a<0) (b,c,d,e)=(c,b,e,d);
		if(a*a>3) d=b,e=c,b=c=0;
		z=(z+1ll*e*r)%MD;
	}
	z=(z+1ll*e*r)%MD;
	wt(z);
}