MOD = 10**9+7 N = int(input()) A = list(map(int,input().split())) if(0 in A): print(-1) exit() if(max(A) >= 4): print(MOD) exit() ans = 1 for i in range(N): if(ans > MOD): print(MOD) exit() frac = 1 for j in range(1,A[i]+1):frac *= j ans *= A[i]**frac print(MOD % ans)