N,M=map(int,input().split())
a=set([int(input()) for i in range(M)])
mod=10**9+7

if N==1:
  print(1)
  exit()

total=[0 for i in range(N+1)]
total[0] = 1
for i in range(1,N+1):
  if i>=2 and i-2 not in a:
  	total[i] += total[i-2]
  if i-1 not in a:
    total[i] += total[i-1]

print(total[-1] % mod) N,M=map(int,input().split()) N map(int,input().split()) map int input().split() ().split () input split M int(input()) for i in range(M) for i in range(M) i range(M) range M for i in range(M) int(input()) int input() input a=set([int(input()) for i in range(M)]) a set([int(input()) for i in range(M)]) set [int(input()) for i in range(M)] mod=10**9+7 mod 10**9+7 10**9 10 9 7 if N==1:
  print(1)
  exit() N==1 N 1 print(1) print 1 exit() exit 0 for i in range(N+1) for i in range(N+1) i range(N+1) range N+1 N 1 for i in range(N+1) 0 total=[0 for i in range(N+1)] total [0 for i in range(N+1)] total[0] = 1 total[0] total 0 1 for i in range(1,N+1):
  if i>=2 and i-2 not in a:
  	total[i] += total[i-2]
  if i-1 not in a:
    total[i] += total[i-1] i range(1,N+1) range 1 N+1 N 1 if i>=2 and i-2 not in a:
  	total[i] += total[i-2]
   i>=2 and i-2 not in a i>=2 i 2 i-2 not in a i-2 i 2 a total[i] += total[i-2] total[i] total i total[i-2] total i-2 i 2 if i-1 not in a:
    total[i] += total[i-1] i-1 not in a i-1 i 1 a total[i] += total[i-1] total[i] total i total[i-1] total i-1 i 1 print(total[-1] % mod) print total[-1] % mod total[-1] total -1 mod a=set([int(input()) for i in range(M)]) set([int(input()) for i in range(M)]) a M=map(int,input().split()) map(int,input().split()) M mod=10**9+7 10**9+7 mod N,M=map(int,input().split()) map(int,input().split()) N total=[0 for i in range(N+1)] [0 for i in range(N+1)] total
N,M=map(int,input().split())
a=set([int(input()) for i in range(M)])
mod=10**9+7

if N==1:
  print(1)
  exit()

total=[0 for i in range(N+1)]
total[0] = 1
for i in range(1,N+1):
  if i>=2 and i-2 not in a:
  	total[i] += total[i-2]
  if i-1 not in a:
    total[i] += total[i-1]

print(total[-1] % mod)