N,M = map(int,input().split())
Stlist = [1]*N
for i in range(M):
    breakstair = int(input())
    Stlist[breakstair-1] = 0
Comb = [1,2]
if N == 1:
    Comb = Stlist
else:
    if Stlist[0] == 0:
        Comb[0] = 0
        Comb[1] = 1
    if Stlist[1] == 0:
       Comb[1] = 0
    for i in range(2,N):
        Comb.append((Comb[i-1] + Comb[i-2])%(10**9+7))
        if Stlist[i] == 0:
            Comb[i] = 0
print(Comb[-1]) N,M = map(int,input().split()) N map(int,input().split()) map int input().split() ().split () input split M Stlist = [1]*N Stlist [1]*N [1] 1 N for i in range(M):
    breakstair = int(input())
    Stlist[breakstair-1] = 0 i range(M) range M breakstair = int(input()) breakstair int(input()) int input() input Stlist[breakstair-1] = 0 Stlist[breakstair-1] Stlist breakstair-1 breakstair 1 0 Comb = [1,2] Comb [1,2] 1 2 if N == 1:
    Comb = Stlist
else:
    if Stlist[0] == 0:
        Comb[0] = 0
        Comb[1] = 1
    if Stlist[1] == 0:
       Comb[1] = 0
    for i in range(2,N):
        Comb.append((Comb[i-1] + Comb[i-2])%(10**9+7))
        if Stlist[i] == 0:
            Comb[i] = 0 N == 1 N 1 Comb = Stlist Comb Stlist if Stlist[0] == 0:
        Comb[0] = 0
        Comb[1] = 1
     Stlist[0] == 0 Stlist[0] Stlist 0 0 Comb[0] = 0 Comb[0] Comb 0 0 Comb[1] = 1 Comb[1] Comb 1 1 if Stlist[1] == 0:
       Comb[1] = 0
     Stlist[1] == 0 Stlist[1] Stlist 1 0 Comb[1] = 0 Comb[1] Comb 1 0 for i in range(2,N):
        Comb.append((Comb[i-1] + Comb[i-2])%(10**9+7))
        if Stlist[i] == 0:
            Comb[i] = 0 i range(2,N) range 2 N Comb.append((Comb[i-1] + Comb[i-2])%(10**9+7)) Comb.append Comb append (Comb[i-1] + Comb[i-2])%(10**9+7) Comb[i-1] + Comb[i-2] Comb[i-1] Comb i-1 i 1 Comb[i-2] Comb i-2 i 2 10**9+7 10**9 10 9 7 if Stlist[i] == 0:
            Comb[i] = 0 Stlist[i] == 0 Stlist[i] Stlist i 0 Comb[i] = 0 Comb[i] Comb i 0 print(Comb[-1]) print Comb[-1] Comb -1 N,M = map(int,input().split()) map(int,input().split()) N M = map(int,input().split()) map(int,input().split()) M Stlist = [1]*N [1]*N Stlist Comb = [1,2] [1,2] Comb breakstair = int(input()) int(input()) breakstair Comb = Stlist Stlist Comb
N,M = map(int,input().split())
Stlist = [1]*N
for i in range(M):
    breakstair = int(input())
    Stlist[breakstair-1] = 0
Comb = [1,2]
if N == 1:
    Comb = Stlist
else:
    if Stlist[0] == 0:
        Comb[0] = 0
        Comb[1] = 1
    if Stlist[1] == 0:
       Comb[1] = 0
    for i in range(2,N):
        Comb.append((Comb[i-1] + Comb[i-2])%(10**9+7))
        if Stlist[i] == 0:
            Comb[i] = 0
print(Comb[-1])