#include #include #include #include using namespace std; typedef long long ll; ll mod = 1e9 + 7; int main(){ int n, k; cin >> n >> k; ll ans = 1; if(k == 0){ for(int i = 1; i <= n; i++) ans *= i, ans %= mod; cout << ans << endl; return 0; } vector v(k+2); for(int i = 0; i < k; i++) cin >> v[i]; v[k] = (1ll<(v[i+1]).count() - bitset<64>(v[i]).count(); for(int j = 1; j <= tmp; j++) ans *= j, ans %= mod; } cout << ans << endl; return 0; }