One more problem with XOR#7838

One more problem with XOR

1 second
122.174 megabytes
Easy

Given array with nonnegative integers, find the amount of pairs of numbers 1 \le l \le r \le n such that X \le A_l xor A_{l + 1} xor ... xor A_r for some given integer . xor is operation of bit addition (in binary) by modulo two. The result of this operation is one if the bits of operands are different. For example: 10_{10} xor 23_{10} = 29_{10}, 1010_2 xor 10111_2 = 11101_2, here given an equation in decimal and then in binary notation.

Input

First line contains two integers (1 \le n \le 10^5) and (0 \le X \le 10^9). Next line contains integers. Each number is no more than 10^9.

Output

Print one number - the answer to the problem.

Examples

Example 1

Loading
Loading

Example 2

Loading
Loading