n,m=map(int,input().split())
a=[0]*(n)
if n==1:
  print(1)
  exit()
if m>0:
  for _ in range(m):
    a[int(input())]+=1
dp=[0]*(n+1)
dp[0]=1
if a[1]!=1:
  dp[1]=1
for i in range(2,n+1):
  if a[i-2]==0 and a[i-1]==0:
    dp[i]=dp[i-2]+dp[i-1]
  elif a[i-1]!=0 and a[i-2]==0:
    dp[i]=dp[i-2]
  elif a[i-2]!=0 and a[i-1]==0:
    dp[i]=dp[i-1]
  else:
    dp[i]=0
print(dp[n]%(10**9+7))     n,m=map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split m a=[0]*(n) a [0]*(n) [0] 0 n if n==1:
  print(1)
  exit() n==1 n 1 print(1) print 1 exit() exit if m>0:
  for _ in range(m):
    a[int(input())]+=1 m>0 m 0 for _ in range(m):
    a[int(input())]+=1 _ range(m) range m a[int(input())]+=1 a[int(input())] a int(input()) int input() input 1 dp=[0]*(n+1) dp [0]*(n+1) [0] 0 n+1 n 1 dp[0]=1 dp[0] dp 0 1 if a[1]!=1:
  dp[1]=1 a[1]!=1 a[1] a 1 1 dp[1]=1 dp[1] dp 1 1 for i in range(2,n+1):
  if a[i-2]==0 and a[i-1]==0:
    dp[i]=dp[i-2]+dp[i-1]
  elif a[i-1]!=0 and a[i-2]==0:
    dp[i]=dp[i-2]
  elif a[i-2]!=0 and a[i-1]==0:
    dp[i]=dp[i-1]
  else:
    dp[i]=0 i range(2,n+1) range 2 n+1 n 1 if a[i-2]==0 and a[i-1]==0:
    dp[i]=dp[i-2]+dp[i-1]
  elif a[i-1]!=0 and a[i-2]==0:
    dp[i]=dp[i-2]
  elif a[i-2]!=0 and a[i-1]==0:
    dp[i]=dp[i-1]
  else:
    dp[i]=0 a[i-2]==0 and a[i-1]==0 a[i-2]==0 a[i-2] a i-2 i 2 0 a[i-1]==0 a[i-1] a i-1 i 1 0 dp[i]=dp[i-2]+dp[i-1] dp[i] dp i dp[i-2]+dp[i-1] dp[i-2] dp i-2 i 2 dp[i-1] dp i-1 i 1 elif a[i-1]!=0 and a[i-2]==0:
    dp[i]=dp[i-2]
   a[i-1]!=0 and a[i-2]==0 a[i-1]!=0 a[i-1] a i-1 i 1 0 a[i-2]==0 a[i-2] a i-2 i 2 0 dp[i]=dp[i-2] dp[i] dp i dp[i-2] dp i-2 i 2 elif a[i-2]!=0 and a[i-1]==0:
    dp[i]=dp[i-1]
   a[i-2]!=0 and a[i-1]==0 a[i-2]!=0 a[i-2] a i-2 i 2 0 a[i-1]==0 a[i-1] a i-1 i 1 0 dp[i]=dp[i-1] dp[i] dp i dp[i-1] dp i-1 i 1 dp[i]=0 dp[i] dp i 0 print(dp[n]%(10**9+7)) print dp[n]%(10**9+7) dp[n] dp n 10**9+7 10**9 10 9 7 m=map(int,input().split()) map(int,input().split()) m n,m=map(int,input().split()) map(int,input().split()) n dp=[0]*(n+1) [0]*(n+1) dp a=[0]*(n) [0]*(n) a
n,m=map(int,input().split())
a=[0]*(n)
if n==1:
  print(1)
  exit()
if m>0:
  for _ in range(m):
    a[int(input())]+=1
dp=[0]*(n+1)
dp[0]=1
if a[1]!=1:
  dp[1]=1
for i in range(2,n+1):
  if a[i-2]==0 and a[i-1]==0:
    dp[i]=dp[i-2]+dp[i-1]
  elif a[i-1]!=0 and a[i-2]==0:
    dp[i]=dp[i-2]
  elif a[i-2]!=0 and a[i-1]==0:
    dp[i]=dp[i-1]
  else:
    dp[i]=0
print(dp[n]%(10**9+7))    
