import copy
import sys
sys.setrecursionlimit(200000)

N, M = [int(n) for n in input().split()]
a = [int(input()) for _ in range(M)]

start = 0
stop = N

reached_ = list(range(stop - start + 1))
reached = copy.copy(reached_)
for v in a:
    reached[v] = 'x'
#print(reached)
#history = []

count = 0
def dfs(x):
    global count

    if x > N:
        return

    if x == N:
        count += 1
        #h.append(x)
        #history.append(h)
        #reached[x] = -1
        return
    
    if reached[x] == 'x':
        return
    
    #h.append(x)

    #reached[x] = -1

    dfs(x + 1)
    dfs(x + 2)

    #reached[x] = reached_[x]

dfs(0)
print(count%100000007)
#print(history)
