Это более сложная версия задачи с большими ограничениями.
Корней Корнеевич откопал массив \(a\) длины \(n\). Корней Корнеевич недавно прочитал в книге про операцию побитового исключающего «ИЛИ» (XOR), поэтому он захотел поэкспериментировать с ней. Для этого он решил найти все целые \(x \ge 0\) такие, что существует возрастающая подпоследовательность массива \(a\), в которой побитовое исключающее «ИЛИ» ее чисел равно \(x\).
Корней Корнеевич довольно быстро нашел все такие \(x\), и хочет проверить свой результат. Для этого он попросил вас решить эту задачу!
Последовательность \(s\) является подпоследовательностью \(b\), если \(s\) может быть получена из \(b\) удалением нескольких (возможно, ни одного или всех) элементов.
Последовательность \(s_1, s_2, \ldots , s_m\) называется возрастающей, если выполняется неравенство: \(s_1 < s_2 < \ldots < s_m\).
Выходные данные
В первой строке выведите единственное число \(k\) — количество найденных вами \(x\).
Во второй строке выходных данных выведите \(k\) целых неотрицательных целых чисел в возрастающем порядке \(x_1, x_2, \ldots x_k\) (\(0 \le x_1 < \ldots < x_k\)) — найденные вами \(x\).