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