n = 10 mod = 998244353 inv = [1 for j in range(n+1)] for a in range(2,n+1): # ax + py = 1 <=> rx + p(-x-qy) = -q => x = -(inv[r]) * (p//a) (r = p % a) res = (mod - inv[mod%a]) * (mod // a) inv[a] = res % mod def binom(n,r): res = 1 for i in range(1,r+1): res = res * (n + 1 - i) % mod res = res * inv[i] % mod return res O = [list(map(int,input().split())) for i in range(5)] X = [list(map(int,input().split())) for i in range(5)] dp = [[[0 for _ in range(34)] for _ in range(5)] for _ in range(9)] dp[0][0][0] = 1 for a in range(5): for b in range(34): c = O[a][b] for n in range(7,-1,-1): for x in range(5): for y in range(34): for m in range(1,min(c,8) + 1): if n + m > 8: break xx,yy = x + m*a,y + m*b if xx > 4: break if yy > 33: break cc = binom(c % mod,m) dp[n+m][xx][yy] = (dp[n+m][xx][yy] + dp[n][x][y] * cc % mod) % mod ans = 0 for x in range(5): for y in range(34): X[x][y] %= mod a,b = 4 - x,33 - y if y == 0: ans = (ans + dp[8][a][b] * X[x][y] % mod) % mod print(ans)