n = int(input()) C = list(map(int,input().split())) mod = 10**9+7 fact = [1,1] finv = [1,1] inv = [0,1] for i in range(2,n+5): fact.append((fact[-1]*i)%mod) inv.append((inv[mod%i]*(mod-mod//i))%mod) finv.append((finv[-1]*inv[-1])%mod) def nCr(n,r,mod): if r > n: return 0 else: return fact[n]*finv[r]%mod*finv[n-r]%mod ans = 0 ten = 1 for i in range(1,n+1): for j,c in enumerate(C,1): if c == 0: continue can = 1 all = n-1 for k in range(9): if k == j-1: can *= nCr(all,C[k]-1,mod) can %= mod all -= C[k]-1 else: can *= nCr(all,C[k],mod) can %= mod all -= C[k] ans += ten*can*j ans %= mod ten *= 10 ten %= mod print(ans)