N=int(input()) *A,=map(int, input().split()) mod=10**9+7 if min(A)==0: print(-1) exit() pattern=[0,1,2**2,3**6] ans=1 for a in A: if a>3: print(mod) exit() else: ans*=pattern[a] if ans>mod: print(mod) exit() print(mod%ans)