C. Джонни и ещё одно падение рейтинга
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Последний контест, проведённый на любимой Джонни платформе по спортивному программированию, был встречен довольно позитивно. Однако, рейтинг Джонни снова упал! Он думает, что хотя задачи были неплохие, они не показывают истинный уровень участников.

Теперь мальчик смотрит на рейтинги соседних участников, записанные в двоичной системе счисления. Он считает, что чем больше эти рейтинги различаются, тем более нечестно, что эти участники расположены на соседних позициях. Он определяет различие между двумя числами как количество позиций битов, на которых одно из чисел содержит ноль, а другое — единицу (мы считаем, что числа дополнены ведущими нулями до одинаковой длины). Например, различие между числами $$$5 = 101_2$$$ и $$$14 = 1110_2$$$ равно $$$3$$$, так как $$$0101$$$ и $$$1110$$$ отличаются в $$$3$$$ позициях. Джонни определяет нечестность контеста как сумму таких различий для всех пар соседних участников.

Джонни только что прислал вам последовательность рейтингов и хочет, чтобы вы вычислили нечестность контеста. Вы заметили, что вы получили последовательные целые числа от $$$0$$$ до $$$n$$$. Это странно, но мальчик упорно твердит, что все правильно. Поэтому, помогите ему и вычислите желаемую нечестность для полученной последовательности чисел.

Входные данные

Входные данные состоят из нескольких наборов входных данных. Первая строка содержит одно целое число $$$t$$$ ($$$1 \leq t \leq 10\,000$$$) — количество наборов входных данных. Следующие $$$t$$$ строк содержат описание наборов входных данных.

Первая и единственная строка каждого набора входных данных содержит одно целое число $$$n$$$ ($$$1 \leq n \leq 10^{18})$$$.

Выходные данные

Выведите $$$t$$$ строк. Для каждого набора входных данных, вы должны вывести одну строку, содержащую одно целое число — нечестность контеста, если последовательность рейтингов равна $$$0$$$, $$$1$$$, ..., $$$n - 1$$$, $$$n$$$.

Пример
Входные данные
5
5
7
11
1
2000000000000
Выходные данные
8
11
19
1
3999999999987
Примечание

Для $$$n = 5$$$, мы вычисляем нечестность следующей последовательности (числа от $$$0$$$ до $$$5$$$, записанные в двоичной системе счисления и дополненные ведущими нулями до одинаковой длины):

  • $$$000$$$
  • $$$001$$$
  • $$$010$$$
  • $$$011$$$
  • $$$100$$$
  • $$$101$$$

Различия равны $$$1$$$, $$$2$$$, $$$1$$$, $$$3$$$, $$$1$$$, соответственно. Поэтому, нечестность равна $$$1 + 2 + 1 + 3 + 1 = 8$$$.