#include <iostream>
#include <cstring>
using namespace std;
int n;
int x;
int i;
int A[35];
int f(int x)
{
    int nrc=0;
    memset(A,0,sizeof(A));
    while(x>0)
    {
        A[++nrc]=x%2;
        x/=2;
    }
    int p=1;
    while(A[p]==0)
        p++;
    int u=nrc-1;
    while(A[u]==1)
        u--;
    if(u>p)
        swap(A[u],A[p]);
    int rez=0,f=1;
    for(int i=1;i<=nrc;i++)
    {
        rez+=A[i]*f;
        f*=2;
    }
    return rez;
}
int main()
{
    cin>>n;
    for(i=1;i<=n;i++)
    {
        cin>>x;
        cout<<f(x)<<" ";
    }
    return 0;
}