import itertools


def main():
    n, m = map(int, input().split())
    a = []
    ans = 0
    for i in range(m):
        a.append(int(input()))

    for numStep in range(-(-n // 2), n):
        step = []
        numDoubleStep = n - numStep
        for i in range(numDoubleStep):
            step.append(2)
        for i in range(numStep-numDoubleStep):
            step.append(1)
        step = list(set(itertools.permutations(step)))
        # print(step)  # debug
        for stepList in step:
            if isSuccess(stepList, a):
                ans += 1
    print(ans % 1000000007)
    return


def isSuccess(stepList, a):
    stepNum = 0
    for steps in stepList:
        stepNum += steps
        if stepNum in a:
            return False
    return True


if __name__ == '__main__':
    main()
