n, m = list(map(int, input().split()))
broken = [False] * (n + 1)
for _ in range(m):
    broken[int(input())] = True

dp = [0] * (n + 1)
dp[0] = 1
dp[1] = 1 if not broken[1] else 0
MOD = 10 ** 9 + 7

for i in range(2, n + 1):
    if not broken[i - 1]:
        dp[i] += (dp[i - 1])
    if not broken[i - 2]:
        dp[i] += (dp[i - 2])
    dp[i] %= MOD

print(dp[n]) n, m = list(map(int, input().split())) n list(map(int, input().split())) list map(int, input().split()) map int input().split() ().split () input split m broken = [False] * (n + 1) broken [False] * (n + 1) [False] False n + 1 n 1 for _ in range(m):
    broken[int(input())] = True _ range(m) range m broken[int(input())] = True broken[int(input())] broken int(input()) int input() input True dp = [0] * (n + 1) dp [0] * (n + 1) [0] 0 n + 1 n 1 dp[0] = 1 dp[0] dp 0 1 dp[1] = 1 if not broken[1] else 0 dp[1] dp 1 1 if not broken[1] else 0 not broken[1] broken[1] broken 1 1 0 MOD = 10 ** 9 + 7 MOD 10 ** 9 + 7 10 ** 9 10 9 7 for i in range(2, n + 1):
    if not broken[i - 1]:
        dp[i] += (dp[i - 1])
    if not broken[i - 2]:
        dp[i] += (dp[i - 2])
    dp[i] %= MOD i range(2, n + 1) range 2 n + 1 n 1 if not broken[i - 1]:
        dp[i] += (dp[i - 1])
     not broken[i - 1] broken[i - 1] broken i - 1 i 1 dp[i] += (dp[i - 1]) dp[i] dp i dp[i - 1] dp i - 1 i 1 if not broken[i - 2]:
        dp[i] += (dp[i - 2])
     not broken[i - 2] broken[i - 2] broken i - 2 i 2 dp[i] += (dp[i - 2]) dp[i] dp i dp[i - 2] dp i - 2 i 2 dp[i] %= MOD dp[i] dp i MOD print(dp[n]) print dp[n] dp n m = list(map(int, input().split())) list(map(int, input().split())) m broken = [False] * (n + 1) [False] * (n + 1) broken dp = [0] * (n + 1) [0] * (n + 1) dp MOD = 10 ** 9 + 7 10 ** 9 + 7 MOD n, m = list(map(int, input().split())) list(map(int, input().split())) n
n, m = list(map(int, input().split()))
broken = [False] * (n + 1)
for _ in range(m):
    broken[int(input())] = True

dp = [0] * (n + 1)
dp[0] = 1
dp[1] = 1 if not broken[1] else 0
MOD = 10 ** 9 + 7

for i in range(2, n + 1):
    if not broken[i - 1]:
        dp[i] += (dp[i - 1])
    if not broken[i - 2]:
        dp[i] += (dp[i - 2])
    dp[i] %= MOD

print(dp[n])
