#include using namespace std; #define rep(i,a,b) for(int i=a;i=b;i--) #define fore(i,a) for(auto& i:a) #define ff first #define ss second #define all(a) begin(a),end(a) #define allr(a) rbegin(a),rend(a) #define pb push_back using ll =long long; using pii=pair; using pll=pair; using vi=vector; using vll=vector; template inline bool chmin(T& a,T b){return a>b?a=b,1:0;} template inline bool chmax(T& a,T b){return a::max()/2; const ll INFL=numeric_limits::max()/2; long long sqrtll(long long x) { assert(x >= 0); long long rev = sqrt(x); while(rev * rev > x) --rev; while((rev+1) * (rev+1)<=x) ++rev; return rev; } void solve(){ const ll D=1e6; ll n;cin>>n; ll root=sqrtll(n); for(ll d=0;d<(1<<20);d++){ ll i=(d^root); ll j=n^i; if(i*i<=j&&j<(i+1)*(i+1)){ cout<sync_with_stdio(0); /* ll n;cin>>n; ll ans{}; map mp; for(ll i=0;i<=2*n;i++){ ll tmp=(sqrtll(i)^i); chmax(ans,abs(tmp-i)); mp[i]=tmp; } auto out=[](ll x){ for(int i=0;i<40;i++){ cout<<((x>>i)&1); } cout<>t; while(t--)solve(); return 0; } /* 高々2個っぽい */