#include <bits/stdc++.h>
using namespace std;
const int mod = 1e9 + 7;
int main()
{
int n,k;
cin>>n>>k;
map<string,int> dp[n];
for (int i=0;i<n;i++)
{
string s;
for (int j=0;j<k;j++)
{
cin>>s;
if (!i) dp[i][s]++;
else
{
int x=0;
string t=s.substr(0,i), t1=s.substr(1,i);
if (dp[i-1].find(t)!=dp[i-1].end()) x=dp[i-1][t];
if (t1!=t && dp[i-1].find(t1)!=dp[i-1].end()) x=(x+dp[i-1][t1])%mod;
if (x) dp[i][s]=(dp[i][s]+x)%mod;
}
}
}
int ans=0;
for (auto [s,i]:dp[n-1])
ans=(ans+i)%mod;
cout<<ans<<endl;
return 0;
}