#include #include #include using namespace std; string toString(long long number){ string result; while(number){ result = (char)(number % 2 + '0') + result; number /= 2; } return result; } long long toNumber(string number){ long long result = 0; for(int i = 0; i < number.length(); i++){ result *= 2; result += (number[i] - '0'); } return result; } int main(){ long long T, N, index0, index1; string S; cin >> T; while(T--){ cin >> N; S = toString(N); for(int i = 0; i < S.length(); i++){ if(S[i] == '0'){ index0 = i; break; } } for(int j = S.length() - 1; j >= 0; j--){ if(S[j] == '1'){ index1 = j; break; } } if(index0 < index1){ swap(S[index0], S[index1]); } N = toNumber(S); cout << N << " "; } return 0; }