import sys

N,M=list(map(int,input().split()))

S=set(map(int,sys.stdin))



a,b=0,1

for i in range(1,N+1):

    if i in S:

        a,b=b,0

    else:

        a,b=b,a+b



print((b%(10**9+7)))

import sys



N,M=list(map(int,input().split()))

bad=set(map(int,sys.stdin))

MOD=10**9+7



a,b=0,1

for i in range(1,N+1):

    if i in bad:

        a,b=b,0

        if a==0:

            break

    else:

        a,b=b,(a+b)%MOD



print(b)

import sys

N, M = list(map(int, input().split()))
S = set(map(int, sys.stdin))
a, b = 0, 1
for i in range(1, N + 1):
    if i in S:
        a, b = b, 0
    else:
        a, b = b, a + b
print((b % (10**9 + 7)))

import sys

N, M = list(map(int, input().split()))
bad = set(map(int, sys.stdin))
MOD = 10**9 + 7
a, b = 0, 1
for i in range(1, N + 1):
    if i in bad:
        a, b = b, 0
        if a == 0:
            break
    else:
        a, b = b, (a + b) % MOD
print(b)

-S = set(map(int, sys.stdin)) +bad = set(map(int, sys.stdin)) +MOD = 10**9 + 7 -    if i in S: +    if i in bad: +        if a == 0: +            break -        a, b = b, a + b -print((b % (10**9 + 7))) +        a, b = b, (a + b) % MOD +print(b)