N = int(input()) A = list(map(int,input().split())) MOD = 10**9+7 ans = 1 A.sort() if A[0] < 0: print(-1) elif A[-1] > 3: print(MOD) else: for i in range(N): ak = 1 for j in range(1,A[i]+1): ak *= j ans *= (A[i]**ak) print(MOD%ans)