#include<bits/stdc++.h>
using namespace std;

int ans = 0;
const int inf = 1000000007;

int func(int n,int now,int stair[]){
    if(now == n){
        ans++;
        return 0;
    }
    else if(now > n){
        return 0;
    }
    else if(stair[now] == 1){
        return 0;
    }
    func(n,now+1,stair);
    func(n,now+2,stair);
}
int main(){ 
    int n,m;
    cin >> n >> m;
    int no[m];
    int stair[n] = {0};
    for(int i=0;i<m;i++){
        cin >> no[i];
        stair[no[i]] = 1;
    }
    func(n,0,stair);
    cout << ans%inf << endl;

    return 0;
}