#include <cstdio>
#include <algorithm>
using namespace std;
typedef long long LL;

const LL mod = 998244353;

LL ans , f[405][405][4] , g[2][405][405][9];
int c[305] , n;

void Add(LL &x , LL y) {x = (x + y) % mod;}
void Sub(LL &x , LL y) {x = (x - y + mod) % mod;}

int main() {
	scanf("%d" , &n);
	for (int i = 1; i <= 26; ++i) scanf("%d" , &c[i]);
	ans = 1;
	for (int i = 1; i <= n; ++i) ans = (ans * (26 - (i > 2))) % mod;
	f[1][0][0] = 25;
	f[1][1][1] = 1;
	// 0:00 1:10 2:01 3:11
	for (int i = 1; i < n; ++i) {
		for (int j = 0; j <= i; ++j) {
			Add(f[i + 1][j][0] , f[i][j][0] * (25 - (i > 1)) % mod + f[i][j][2] * 25 % mod);
			Add(f[i + 1][j + 1][1] , f[i][j][0]);
			Add(f[i + 1][j][2] , f[i][j][1] * (25 - (i > 1)) % mod + f[i][j][3] * 25 % mod);
			Add(f[i + 1][j + 1][3] , f[i][j][1]);
		}
	}
	g[1][0][0][0] = 24;
	g[1][1][0][1] = 1;
	g[1][0][1][2] = 1; 
	// 0:00 1:10 2:20 3:01 4:11 5:21 6:02 7:12 8:22
	for (int i = 1; i < n; ++i) {
		for (int j = 0; j <= i; ++j) {
			for (int k = 0; k + j <= i; ++k) {
				Add(g[(i + 1) & 1][j][k][0] , g[i & 1][j][k][0] * (24 - (i > 1)) % mod + g[i & 1][j][k][3] * 24 % mod + g[i & 1][j][k][6] * 24 % mod);
				Add(g[(i + 1) & 1][j + 1][k][1] , g[i & 1][j][k][0] + g[i & 1][j][k][6]);
				Add(g[(i + 1) & 1][j][k + 1][2] , g[i & 1][j][k][0] + g[i & 1][j][k][3]);
				Add(g[(i + 1) & 1][j][k][3] , g[i & 1][j][k][1] * (24 - (i > 1)) % mod + g[i & 1][j][k][4] * 24 % mod + g[i & 1][j][k][7] * 24 % mod);
				Add(g[(i + 1) & 1][j + 1][k][4] , g[i & 1][j][k][1] + g[i & 1][j][k][7]);
				Add(g[(i + 1) & 1][j][k + 1][5] , g[i & 1][j][k][1] + g[i & 1][j][k][4]);
				Add(g[(i + 1) & 1][j][k][6] , g[i & 1][j][k][2] * (24 - (i > 1)) % mod + g[i & 1][j][k][5] * 24 % mod + g[i & 1][j][k][8] * 24 % mod);
				Add(g[(i + 1) & 1][j + 1][k][7] , g[i & 1][j][k][2] + g[i & 1][j][k][8]);
				Add(g[(i + 1) & 1][j][k + 1][8] , g[i & 1][j][k][2] + g[i & 1][j][k][5]);
				g[i & 1][j][k][0] = g[i & 1][j][k][1] = g[i & 1][j][k][2] = g[i & 1][j][k][3] = g[i & 1][j][k][4] = g[i & 1][j][k][5] = g[i & 1][j][k][6] = g[i & 1][j][k][7] = g[i & 1][j][k][8] = 0;
				 
			}
		}
	}
	for (int i = 1; i <= 26; ++i) {
		for (int j = c[i] + 1; j <= n; ++j) {
			for (int w = 0; w <= 3; ++w) {
				Sub(ans , f[n][j][w]);
			}
		}
	}
	for (int i = 1; i <= 26; ++i) {
		for (int j = i + 1; j <= 26; ++j) {
			for (int p = c[i] + 1; p <= n; ++p) {
				for (int q = c[j] + 1; q <= n; ++q) {
					for (int w = 0; w <= 8; ++w) {
						Add(ans , g[n & 1][p][q][w]);
					}
				}
			}
		}
	}
	printf("%lld" , ans);
	return 0;
} 