MOD=10**9+7
N,M=map(int,input().split())
A=[int(input()) for _ in range(M)]
L=[-1 for _ in range(N)]
p=0
if A == []:
  A=[0]
if 1 == A[p]:
  L[0] = 0
  if p < M-1:
    p +=1
else:
  L[0] = 1
if N>1:
  if 2 == A[p]:
    L[1] = 0
    if p < M-1:
      p+=1
  else:
    L[1]=L[0]+1
for i in range(2,N):
  if i+1 == A[p]:
    L[i] = 0
    if p < M-1:
      p+=1
  else:
    L[i]=L[i-1]+L[i-2]
print(L[-1]%MOD) MOD=10**9+7 MOD 10**9+7 10**9 10 9 7 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)] -1 for _ in range(N) for _ in range(N) _ range(N) range N for _ in range(N) -1 L=[-1 for _ in range(N)] L [-1 for _ in range(N)] p=0 p 0 if A == []:
  A=[0] A == [] A [] A=[0] A [0] 0 if 1 == A[p]:
  L[0] = 0
  if p < M-1:
    p +=1
else:
  L[0] = 1 1 == A[p] 1 A[p] A p L[0] = 0 L[0] L 0 0 if p < M-1:
    p +=1 p < M-1 p M-1 M 1 p +=1 p 1 L[0] = 1 L[0] L 0 1 if N>1:
  if 2 == A[p]:
    L[1] = 0
    if p < M-1:
      p+=1
  else:
    L[1]=L[0]+1 N>1 N 1 if 2 == A[p]:
    L[1] = 0
    if p < M-1:
      p+=1
  else:
    L[1]=L[0]+1 2 == A[p] 2 A[p] A p L[1] = 0 L[1] L 1 0 if p < M-1:
      p+=1
   p < M-1 p M-1 M 1 p+=1 p 1 L[1]=L[0]+1 L[1] L 1 L[0]+1 L[0] L 0 1 for i in range(2,N):
  if i+1 == A[p]:
    L[i] = 0
    if p < M-1:
      p+=1
  else:
    L[i]=L[i-1]+L[i-2] i range(2,N) range 2 N if i+1 == A[p]:
    L[i] = 0
    if p < M-1:
      p+=1
  else:
    L[i]=L[i-1]+L[i-2] i+1 == A[p] i+1 i 1 A[p] A p L[i] = 0 L[i] L i 0 if p < M-1:
      p+=1
   p < M-1 p M-1 M 1 p+=1 p 1 L[i]=L[i-1]+L[i-2] L[i] L i L[i-1]+L[i-2] L[i-1] L i-1 i 1 L[i-2] L i-2 i 2 print(L[-1]%MOD) print L[-1]%MOD L[-1] L -1 MOD L=[-1 for _ in range(N)] [-1 for _ in range(N)] L MOD=10**9+7 10**9+7 MOD p+=1 1 p M=map(int,input().split()) map(int,input().split()) M p=0 0 p N,M=map(int,input().split()) map(int,input().split()) N A=[0] [0] A p+=1 1 p A=[int(input()) for _ in range(M)] [int(input()) for _ in range(M)] A p +=1 1 p
MOD=10**9+7
N,M=map(int,input().split())
A=[int(input()) for _ in range(M)]
L=[-1 for _ in range(N)]
p=0
if A == []:
  A=[0]
if 1 == A[p]:
  L[0] = 0
  if p < M-1:
    p +=1
else:
  L[0] = 1
if N>1:
  if 2 == A[p]:
    L[1] = 0
    if p < M-1:
      p+=1
  else:
    L[1]=L[0]+1
for i in range(2,N):
  if i+1 == A[p]:
    L[i] = 0
    if p < M-1:
      p+=1
  else:
    L[i]=L[i-1]+L[i-2]
print(L[-1]%MOD)