N,M=map(int,input().split())
mod=1000000007
a=[0]*(10**5+1)
dp=[0]*(10**5+1)
for i in range(M):
    b=int(input())
    a[b]=1
dp[0]=1
for i in range(1,N+1):
    if a[i]==1:
        continue
    dp[i]+=dp[i-1]
    if i>1:
        dp[i]+=dp[i-2]
    dp[i]=dp[i]%mod
print(dp[N]%mod) N,M=map(int,input().split()) N map(int,input().split()) map int input().split() ().split () input split M mod=1000000007 mod 1000000007 a=[0]*(10**5+1) a [0]*(10**5+1) [0] 0 10**5+1 10**5 10 5 1 dp=[0]*(10**5+1) dp [0]*(10**5+1) [0] 0 10**5+1 10**5 10 5 1 for i in range(M):
    b=int(input())
    a[b]=1 i range(M) range M b=int(input()) b int(input()) int input() input a[b]=1 a[b] a b 1 dp[0]=1 dp[0] dp 0 1 for i in range(1,N+1):
    if a[i]==1:
        continue
    dp[i]+=dp[i-1]
    if i>1:
        dp[i]+=dp[i-2]
    dp[i]=dp[i]%mod i range(1,N+1) range 1 N+1 N 1 if a[i]==1:
        continue
     a[i]==1 a[i] a i 1 continue dp[i]+=dp[i-1] dp[i] dp i dp[i-1] dp i-1 i 1 if i>1:
        dp[i]+=dp[i-2]
     i>1 i 1 dp[i]+=dp[i-2] dp[i] dp i dp[i-2] dp i-2 i 2 dp[i]=dp[i]%mod dp[i] dp i dp[i]%mod dp[i] dp i mod print(dp[N]%mod) print dp[N]%mod dp[N] dp N mod M=map(int,input().split()) map(int,input().split()) M N,M=map(int,input().split()) map(int,input().split()) N dp=[0]*(10**5+1) [0]*(10**5+1) dp b=int(input()) int(input()) b mod=1000000007 1000000007 mod a=[0]*(10**5+1) [0]*(10**5+1) a
N,M=map(int,input().split())
mod=1000000007
a=[0]*(10**5+1)
dp=[0]*(10**5+1)
for i in range(M):
    b=int(input())
    a[b]=1
dp[0]=1
for i in range(1,N+1):
    if a[i]==1:
        continue
    dp[i]+=dp[i-1]
    if i>1:
        dp[i]+=dp[i-2]
    dp[i]=dp[i]%mod
print(dp[N]%mod)
