/*#pragma GCC optimize("Ofast") #pragma GCC optimize("avx2") #pragma GCC optimize("unroll-loops")*/ #define ll int64_t #include using namespace std; const ll MAXN=1e6+5,INF=LLONG_MAX; ll n,m,a[MAXN]; void solve(){ cin>>n>>m; for(ll i=1;i<=n;i++) cin>>a[i]; ll d=0,ans=0,tm=0; for(ll i=1;i<=n;i++){ if(a[i]>=m) ans++; if(d==0 && a[i]>=m) tm=a[i]; tm&=a[i]; if(tm>=m) d++; else{ ans+=d*(d-1)/2; d=0; tm=0; if(a[i]>=m){ d=1; tm=a[i]; ll j=i-1; while(j>=1){ if((tm&a[j])>=m){d++; tm&=a[j]; j--;} else break; } ans-=d*(d-1)/2; } } } ans+=d*(d-1)/2; cout<>t; while(t--) solve(); return 0; }