n, m = map(int, input().split())

a = []
for i in range(m):
    a.append(int(input()))

memo = [0] * (n+1)

in_memo = [False] * (n+1)

memo[0] = 1
in_memo[0] = True

if 1 in a:
    memo[1] = 0
else:
    memo[1] = 1
in_memo[1] = True

def dp(num):
    if not in_memo[num]:
        if num in a:
            memo[num] = 0
        else:
            memo[num] = dp(num-1) + dp(num-2)
        in_memo[num] = True
    return memo[num]

print(dp(100)%1000000007)

