#include<bits/stdc++.h>
using namespace std;
#define p 1000000007l
int n,m;
unsigned long long a[10],dp[105];
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++) cin>>a[i];
sort(a+1,a+m+1,less<int>());
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++) dp[i]=(dp[i]+(i>a[j]?dp[i-a[j]]:max(1,j-1)))%p;
cout<<dp[n]<<endl;
return 0;
}