#include<cstdio> #include<fstream> #include<iostream> #include<iomanip> #include<algorithm> #include<vector> #include<bitset> #include<deque> #include<queue> #include<set> #include<map> #include<cmath> #include<cstring> #include<ctime> #include<cstdlib> #include<unordered_map> #define ll long long #define pb push_back #define mp make_pair #define pii pair<int,int> #define pll pair<ll,ll> #define all(x) (x).begin(), (x).end() #define fi first #define se second using namespace std; int n, i, cnt, a[105]; int main() { // freopen("test.in", "r", stdin); // freopen("test.out", "w", stdout); scanf("%d", &n); for(i = 0; (1 << i) <= n; i++) a[++cnt] = (1 << i); printf("%d\n",cnt); for(i=1;i<=cnt;i++) printf("%d ",a[i]); return 0; }