You are given numbers n, x and a sequence of n numbers. Find the largest possible interval of consequently following elements, such that "xor" of these elements is not less than x. I.e., more formally, find such i and k that

aixorai+1xor ... xorai+k-1x, 1ii + k - 1n,

and k is largest possible positive number.

It's guaranteed that for each test from the testset such an interval exists.

We remind you that xor operation is applied to numbers in binary representation, so that for each pair of bits the following is true:

0 xor 0 = 0

0 xor 1 = 1

1 xor 0 = 1

1 xor 1 = 0

The result of this operation doesn't depend on the order of operands a xor b = b xor a. Moreover (a xor (a xor b)) = b.

In Pascal this operation is represented as xor. In C/C++/Java as ^.


The first line contains n (1n250 000) and x (0x109). The second line contains n non-negative numbers not exceeding 109.


The first line must contain two numbers: i and k. In case of many solutions output the one with the smallest i.

Time limit 2 second
Memory limit 244.24 MiB
Input example #1
4 6
6 1 2 4
Output example #1
2 3
Source 2012 VIII Zhautykov Olympiad Almaty, Kazakhstan, January 17