#include<bits/stdc++.h>
using namespace std;

typedef long long ll;
ll dp[101][101][256];
ll mod=1e9+7;
int n,k;
int a[101];

int main(){
  cin>>n>>k;
  for(int i=0;i<n;i++)cin>>a[i];
  dp[0][0][0]=1;
  for(int i=0;i<n;i++){
    for(int j=0;j<n;j++){
      for(int k=0;k<256;k++){
        (dp[i+1][j][k]+=dp[i][j][k])%=mod;
        (dp[i+1][j+1][k^a[i]]+=dp[i][j][k])%=mod;
      }
    }
  }
  
  ll ans=0,num=1;
  for(ll i=1;i<=n;i++){
    num=(num*i)%mod;
    ans+=(dp[n][i][k]*num);
    ans%=mod;
  }
  cout<<ans<<endl;
  return 0;
}
