n,m = map(int,input().split())
a = [ int(input()) for _ in range(m)]
M=10**9+7
lis = [1] + [0]*n

for i in a:
  lis[i]=-1
lis[1] += 1
for i in range(n-1):
  if lis[i+2]<0:
    lis[i+2]= 0
  else:
    lis[i+2] = (lis[i+1] + lis[i])%M
print(lis[n]) n,m = map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split m int(input()) for _ in range(m) for _ in range(m) _ range(m) range m for _ in range(m) int(input()) int input() input a = [ int(input()) for _ in range(m)] a [ int(input()) for _ in range(m)] M=10**9+7 M 10**9+7 10**9 10 9 7 lis = [1] + [0]*n lis [1] + [0]*n [1] 1 [0]*n [0] 0 n for i in a:
  lis[i]=-1 i a lis[i]=-1 lis[i] lis i -1 lis[1] += 1 lis[1] lis 1 1 for i in range(n-1):
  if lis[i+2]<0:
    lis[i+2]= 0
  else:
    lis[i+2] = (lis[i+1] + lis[i])%M i range(n-1) range n-1 n 1 if lis[i+2]<0:
    lis[i+2]= 0
  else:
    lis[i+2] = (lis[i+1] + lis[i])%M lis[i+2]<0 lis[i+2] lis i+2 i 2 0 lis[i+2]= 0 lis[i+2] lis i+2 i 2 0 lis[i+2] = (lis[i+1] + lis[i])%M lis[i+2] lis i+2 i 2 (lis[i+1] + lis[i])%M lis[i+1] + lis[i] lis[i+1] lis i+1 i 1 lis[i] lis i M print(lis[n]) print lis[n] lis n M=10**9+7 10**9+7 M m = map(int,input().split()) map(int,input().split()) m n,m = map(int,input().split()) map(int,input().split()) n a = [ int(input()) for _ in range(m)] [ int(input()) for _ in range(m)] a lis = [1] + [0]*n [1] + [0]*n lis
n,m = map(int,input().split())
a = [ int(input()) for _ in range(m)]
M=10**9+7
lis = [1] + [0]*n

for i in a:
  lis[i]=-1
lis[1] += 1
for i in range(n-1):
  if lis[i+2]<0:
    lis[i+2]= 0
  else:
    lis[i+2] = (lis[i+1] + lis[i])%M
print(lis[n])