Одного разу відбувся великий лицарський турнір. У ньому брали участь лицарів (n = 2^k для деякого цілого ), чиї імена вже забуті — історики нумерували їх просто 1, 2, \ldots, n.
Турнір проходив за принципом вибування. У першому раунді лицар перемагав лицаря , лицар перемагав , перемагав і так далі. У другому раунді перемагав , перемагав і так далі. І так продовжувалося до кінця турніру: у кожному раунді кожен учасник бився з найближчим номером (існує лише один варіант такого розташування супротивників між собою), і менший номер завжди перемагав. Турнір переміг лицар , який і був оголошений чемпіоном.
Припустимо, що кожен учасник має певний (але різний) рівень лицарської майстерності, і той, у кого він більший, завжди перемагає у дуелі. Очевидно, що чемпіоном стає найвправніший. Вам слід знайти всіх таких лицарів, які могли б мати другу за величиною майстерність.
Перший рядок містить кількість тестів . Далі наведено самі тести.
Кожен тест містить одне натуральне число (n \le 2^{63}) — кількість учасників турніру.
Для кожного тесту виведіть у окремому рядку кількість можливих срібних медалістів, а також їхні номери у порядку зростання.
Приклад 1