Нассер розмірковував про масиви і вирішив кинути собі виклик з побітовими операціями. Він створив наступне завдання:
Нассеру дано масив цілих чисел, і він хоче зробити всі елементи рівними.
Він може виконувати наступну операцію будь-яку кількість разів (можливо, нуль):
use xor basis
Оберіть індекс (1 \le i \le n), виберіть ціле число (1 \le x \le 10^{10}), і замініть a_i на a_i \,|\, x.
Тут символ | представляє операцію побітове АБО. Для двох цілих чисел та , результат є числом, у двійковому представленні якого стоїть в кожній позиції біта, де або , або мають . Наприклад, 5 \,|\, 3 = 7, тому що (101)_2 \,|\, (011)_2 = (111)_2.
Нассер запитав себе:
"Яка мінімальна кількість операцій потрібна, щоб зробити всі елементи масиву рівними?"
Кожен тест містить декілька тестових випадків. Перша стрічка містить одне ціле число (1 \le t \le 10^4) — кількість тестових випадків. Опис тестових випадків наступний.
Перша стрічка кожного тестового випадку містить одне ціле число (1 \le n \le 2 \cdot 10^5) — розмір масиву.
Друга стрічка кожного тестового випадку містить цілих чисел a_1, a_2, \ldots, a_n (1 \le a_i \le 10^9) — елементи масиву.
Гарантовано, що сума по всім тестовим випадкам не перевищує 2 \cdot 10^5.
Для кожного тестового випадку виведіть одне ціле число — мінімальну кількість операцій, потрібних, щоб зробити всі елементи рівними.
Приклад 1
Підзавдання ( балів) : (1 \le a_i \le 2)
Підзавдання ( балів) : (a_i=2^k) тобто a_i є степенем .
Підзавдання ( балів) : Без додаткових обмежень.