#include <bits/stdc++.h>
int search(int num, int len, int array[]) {
  for (int i = 0; i < len; i++) {
    if (num == array[i]) {
      return 1;
    }
  }
  return 0;
}
int main(void) {
  int n, m;
  int a[100000];
  long int dp[100000];
  for (int i = 0; i < m; i++) {
    scanf("%d", &a[i]);
  }
  for (int i = 0; i < m; i++) {
    dp[a[i]] = 0;
  }
  for (int i = n; i > -1; i--) {
    if (i == n) {
      dp[i] = 1;
    } else if (i == n - 1 && !search(i, m, a)) {
      dp[i] = 1;
    } else if (!search(i, m, a)) {
      dp[i] = dp[i + 1] + dp[i + 2];
    }
  }
  printf("%ld\n", dp[0] % 1000000007);
  return 0;
}
