n,m = map(int,input().split())
a = {int(input()) for _ in range(m)}
mod = 10**9 + 7

dp = [0]*(n+1)
dp[0] = 1
    
for i in range(1,n+1):
    if i in a:
        continue
    x = dp[i-1] 
    if i > 1:
        x += dp[i-2]
    dp[i] = x
ans = dp[n] % mod
print(ans) 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 mod = 10**9 + 7 mod 10**9 + 7 10**9 10 9 7 dp = [0]*(n+1) dp [0]*(n+1) [0] 0 n+1 n 1 dp[0] = 1 dp[0] dp 0 1 for i in range(1,n+1):
    if i in a:
        continue
    x = dp[i-1] 
    if i > 1:
        x += dp[i-2]
    dp[i] = x i range(1,n+1) range 1 n+1 n 1 if i in a:
        continue
     i in a i a continue x = dp[i-1] x dp[i-1] dp i-1 i 1 if i > 1:
        x += dp[i-2]
     i > 1 i 1 x += dp[i-2] x dp[i-2] dp i-2 i 2 dp[i] = x dp[i] dp i x ans = dp[n] % mod ans dp[n] % mod dp[n] dp n mod print(ans) print ans x = dp[i-1] dp[i-1] x mod = 10**9 + 7 10**9 + 7 mod x += dp[i-2] dp[i-2] x dp = [0]*(n+1) [0]*(n+1) dp a = {int(input()) for _ in range(m)} a m = map(int,input().split()) map(int,input().split()) m ans = dp[n] % mod dp[n] % mod ans n,m = map(int,input().split()) map(int,input().split()) n
n,m = map(int,input().split())
a = {int(input()) for _ in range(m)}
mod = 10**9 + 7

dp = [0]*(n+1)
dp[0] = 1
    
for i in range(1,n+1):
    if i in a:
        continue
    x = dp[i-1] 
    if i > 1:
        x += dp[i-2]
    dp[i] = x
ans = dp[n] % mod
print(ans)