import sys def I(): return int(sys.stdin.readline().rstrip()) def LI(): return list(map(int,sys.stdin.readline().rstrip().split())) #空白あり N = I() A = LI() m = 10**9+7 if min(A) == 0: print(-1) exit() if max(A) >= 4: print(m) else: x = 1 for a in A: if a == 2: x *= 4 if a == 3: x *= 729 if x > m: print(m) break else: print(m % x)