/*
TASK:flower
LANG:C
*/
#include <stdio.h>
int n, NS, WE, dp[102][52][52];

int main()
{
	int i, j, k, l;
    char s[3];
	scanf("%d", &n);
    NS=WE=0;
    for(i=0; i<n; i++) {
    	scanf("%s", s);
        switch(s[0]) {
        	case 'N': NS+=1; break;
            case 'W': WE+=1; break;
        }
    }
    for(k=0; k<=n; k++) {
	    for(i=0; i<=NS; i++) {
	    	for(j=0; j<=WE; j++) {
	            dp[k][i][j]=0;
	        }
	    }
    }
    dp[1][1][0]=1;
    dp[1][0][1]=1;
    for(i=2; i<=n; i++) {
    	for(k=0; k<=NS; k++) {
        	for(l=0; l<=WE; l++) {
            	if(k!=0)  dp[i][k][l]+=dp[i-1][k-1][l];
                if(k!=NS) dp[i][k][l]+=dp[i-1][k+1][l];
                if(l!=0)  dp[i][k][l]+=dp[i-1][k][l-1];
                if(l!=WE) dp[i][k][l]+=dp[i-1][k][l+1];
            }
        }
    }
	printf("%d\n", dp[n][0][0]);
/*
    for(k=0; k<=NS; k++) {
    	for(l=0; l<=WE; l++) {
        	printf("%-4d", dp[n][k][l]);
        }
        printf("\n");
    }
*/
	return 0;
}
