Республиканская олимпиада по информатике 2018 года за 9 класс | Казахстанские олимпиады

Задача E. Na2a и уравнение

Ограничение по времени Ограничение по памяти
1 секунда 256 мегабайт

Na2a много баловался на уроке информатики, и учитель в наказание ему придумал следующую задачу. Найти неотрицательное целое число xx, такое что (a1x)+(a2x)+...+(anx)=Sa_1 \oplus x) + (a_2 \oplus x) + ... + (a_n \oplus x) = S, где a1,...,an,Sa_1,...,a_n,S — заданные числа. Здесь \oplus обозначает операцию побитового XOR или исключающего ИЛИ. Данная операция существует во всех современных языках программирования, например, в языках C++ и Java она обозначена как <<\string^>>, в Pascal — как <>. Помогите Na2a решить данное уравнение.

Формат входного файла

В первой строке находятся два целых числа nn, S(1n105,0S1012)S (1 \le n \le 10^5, 0 \le S \le 10^{12}). Во второй строке находятся nn целых числа a1a_1, a2a_2, ..., an(0ai1012)a_n(0 \le a_i \le 10^{12}).

Формат выходного файла

Выведите -11, если уравнение не имеет неотрицательных решений. Иначе выведите такое x(x0)x(x \ge 0), что описанное в условии равенство выполняется. Если существует несколько ответов, выведите любой из них.

Примеры

Вход

3 4
1 2 3

Выход

2