#include using namespace std; using ll = long long; unordered_map M; ll dfs(ll N) { if (N <= 0)return 0; if (M.count(N))return M[N]; M[N] = dfs(N / 2) + dfs((N + 3) / 4 - 1) + dfs((N + 1) / 4) + (N + 3) / 4 + (N + 1) / 4; return M[N]; } int main() { ll T; cin >> T; while (T--) { ll N; cin >> N; M.clear(); cout << dfs(N) << endl; } }