n,m=map(int,input().split())
a1=0
ans=1
for i in range(m+1):
    if i==m:
        a2=n+1
    else:
        a2=int(input())
    l=a2-a1
    if l==0:
        print(0)
        exit()
    if l>2:
        fst=1
        snd=1
        for _ in range(l-2):
            nfst=snd
            snd=fst+nfst
            fst=nfst
        ans*=snd
    a1=a2+1
print(ans%(10**9+7)) n,m=map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split m a1=0 a1 0 ans=1 ans 1 for i in range(m+1):
    if i==m:
        a2=n+1
    else:
        a2=int(input())
    l=a2-a1
    if l==0:
        print(0)
        exit()
    if l>2:
        fst=1
        snd=1
        for _ in range(l-2):
            nfst=snd
            snd=fst+nfst
            fst=nfst
        ans*=snd
    a1=a2+1 i range(m+1) range m+1 m 1 if i==m:
        a2=n+1
    else:
        a2=int(input())
     i==m i m a2=n+1 a2 n+1 n 1 a2=int(input()) a2 int(input()) int input() input l=a2-a1 l a2-a1 a2 a1 if l==0:
        print(0)
        exit()
     l==0 l 0 print(0) print 0 exit() exit if l>2:
        fst=1
        snd=1
        for _ in range(l-2):
            nfst=snd
            snd=fst+nfst
            fst=nfst
        ans*=snd
     l>2 l 2 fst=1 fst 1 snd=1 snd 1 for _ in range(l-2):
            nfst=snd
            snd=fst+nfst
            fst=nfst
         _ range(l-2) range l-2 l 2 nfst=snd nfst snd snd=fst+nfst snd fst+nfst fst nfst fst=nfst fst nfst ans*=snd ans snd a1=a2+1 a1 a2+1 a2 1 print(ans%(10**9+7)) print ans%(10**9+7) ans 10**9+7 10**9 10 9 7 snd=fst+nfst fst+nfst snd fst=nfst nfst fst a1=0 0 a1 a2=n+1 n+1 a2 l=a2-a1 a2-a1 l n,m=map(int,input().split()) map(int,input().split()) n a2=int(input()) int(input()) a2 m=map(int,input().split()) map(int,input().split()) m snd=1 1 snd a1=a2+1 a2+1 a1 fst=1 1 fst ans*=snd snd ans nfst=snd snd nfst ans=1 1 ans
n,m=map(int,input().split())
a1=0
ans=1
for i in range(m+1):
    if i==m:
        a2=n+1
    else:
        a2=int(input())
    l=a2-a1
    if l==0:
        print(0)
        exit()
    if l>2:
        fst=1
        snd=1
        for _ in range(l-2):
            nfst=snd
            snd=fst+nfst
            fst=nfst
        ans*=snd
    a1=a2+1
print(ans%(10**9+7))