N,M = gets.split.map(&:to_i)
a = []
M.times {
  a << gets.to_i
}

dp = Array.new(N+1, 0)
dp[0] = 1

ai = 0
1.upto(N) { |i|
  if a[ai] == i
    dp[i] = 0
    ai += 1
  else
    dp[i] = dp[i-1] + dp[i-2]
  end
}

p dp[N] % (10**9+7)
