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

vector<int> v;

int main() {
    int n, i;

    ifstream in("fis.in");
    in >> n;
    in.close();

    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);

    ofstream out("fis.out");
    out << v.size() - 1 << '\n';
    for (i = 1; i < v.size(); i++)
        out << v[i] << ' ';
    out.close();
    return 0;
}