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