#include<bits/stdc++.h>
using namespace std;
int main(){
long long a,d[100]={0};
cin>>a;
if(a%2==1){//判断是否为奇数
cout<<"-1";
return 0;
}
long long i=1,s=0;
while(i<=a){
i=i*2;
s++;
}
i/=2;
s--;
long long n=0,s1=s,g=0;
n+=pow(2,s1);
d[0]=pow(2,s1);
if(n==a){
cout<<n;
return 0;
}
long long j;
while(n<=a){
for(int i=s1-1;i>=1;i--){
j=pow(2,i);
//cout<<j<<" ";
if(n+j==a){
g++;
d[g]=j;
goto k;
}
}
j=pow(2,s1-1);
n+=j;
g++;
d[g]=j;
s1--;
if(n==a){
goto k;
}
}
k:
for(int i=0;i<=g;i++){
cout<<d[i]<<" ";
}
return 0;
}