#!/usr/bin/env python3
n = int(input())
a = list(map(int, input().split()))
b = [0]
r = 0
for e in a:
    if e == 2: b.append(1 + b[-1])
    else: b.append(b[-1])
for i in range(len(a)):
    for j in range(i):
        if a[i] != 3 or a[j] != 1: continue
        r += 2**(b[i] - b[j]) - 1
print(r%1000000007)
