#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7;
int main() {
  int N, M;
  cin >> N >> M;
  vector<bool> stairs(N + 1, true);
  for (int i = 0; i < N; i++) {
    int tmp;
    cin >> tmp;
    stairs[tmp] = false;
  }
  vector<long long int> met(N + 1);
  met[0] = 1;
  for (int i = 0; i < N; i++) {
    for (int j = i + 1; j <= min(N, i + 2); j++) {
      if (stairs[j]) {
        met[j] += met[i];
        met[j] %= mod;
      }
    }
  }
  cout << met[N] << endl;
  return 0;
}
