#include #include using namespace std; int x[100]; void rez(); int main() { int n; cin >> n; for (int i = 0; i < n; i++) rez(); return 0; } void rez() { int n, nr = 0; cin >> n; do { x[nr++] = n % 2; n /= 2; } while (n); int p0 = -1, p1 = -1, i; for (i = nr - 1; i >= 0; i--) if (x[i] == 0) { p0 = i; break; } for (i = i - 1; i >= 0; i--) if (x[i] == 1) { p1 = i; break; } if (p1 != -1) swap(x[p0], x[p1]); int s = 0; for (i = 0; i < nr; i++) s += x[i] * pow(2, i); cout << s << ' '; }