#include <iostream>
#include <vector>
using namespace std;

vector<int> v;

int main() {
    int n, i;
    cin >> n;

    v.push_back(0);
    v.push_back(1);
    for (i = 2; v[i-1]*2-1 < n; i++)
        v.push_back(v[i-1]*2);

    cout << v.size() - 1 << '\n';
    for (i = 1; i < v.size(); i++)
        cout << v[i] << ' ';

    return 0;
}