#include <stdio.h>
int main()
{
long long n,x;
scanf("%lld %lld",&n
,&x
); long long c, first,j, last, middle,search, array[n],count=0;
for (c = 0; c < n; c++)
for(j=0;j<n;j++){
if(array[j]==-100)
continue;
search=array[j]^x;
first = 0;
last = n - 1;
middle = (first+last)/2;
while (first <= last) {
if (array[middle] < search)
first = middle + 1;
else if (array[middle] == search) {
count++;
array[middle]=-100;
break;
}
else
last = middle - 1;
middle = (first + last)/2;
if (first > last)
break;
}
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiAKaW50IG1haW4oKQp7Cglsb25nIGxvbmcgbix4OwoJCglzY2FuZigiJWxsZCAlbGxkIiwmbiwmeCk7CiAgIGxvbmcgbG9uZyBjLCBmaXJzdCxqLCBsYXN0LCBtaWRkbGUsc2VhcmNoLCBhcnJheVtuXSxjb3VudD0wOwogCiAgIGZvciAoYyA9IDA7IGMgPCBuOyBjKyspCiAgICAgIHNjYW5mKCIlbGxkIiwmYXJyYXlbY10pOwogCiBmb3Ioaj0wO2o8bjtqKyspewogCWlmKGFycmF5W2pdPT0tMTAwKQogCQljb250aW51ZTsKICAgc2VhcmNoPWFycmF5W2pdXng7CiAKICAgZmlyc3QgPSAwOwogICBsYXN0ID0gbiAtIDE7CiAgIG1pZGRsZSA9IChmaXJzdCtsYXN0KS8yOwogCiAgIHdoaWxlIChmaXJzdCA8PSBsYXN0KSB7CiAgICAgIGlmIChhcnJheVttaWRkbGVdIDwgc2VhcmNoKQogICAgICAgICBmaXJzdCA9IG1pZGRsZSArIDE7ICAgIAogICAgICBlbHNlIGlmIChhcnJheVttaWRkbGVdID09IHNlYXJjaCkgewogICAgICAgICBjb3VudCsrOwogICAgICAgICBhcnJheVttaWRkbGVdPS0xMDA7CiAgICAgICAgIGJyZWFrOwogICAgICB9CiAgICAgIGVsc2UKICAgICAgICAgbGFzdCA9IG1pZGRsZSAtIDE7CiAKICAgICAgbWlkZGxlID0gKGZpcnN0ICsgbGFzdCkvMjsKICAgCiAgIGlmIChmaXJzdCA+IGxhc3QpCiAgICAgIGJyZWFrOwogICAgICB9CiB9CiBwcmludGYoIiVsbGQiLGNvdW50KTsKIAogICByZXR1cm4gMDsgICAKfQ==