#include <bits/stdc++.h>
using namespace std;
int num[10000];
int main() {
  int n;
  while (cin >> n) {
    stack<int> p;
    p.push(1);
    for (int i = 1; i < n; ++i) {
      p.push(1);
      int x, y;
      while (p.size() >= 2) {
        x = p.top();
        p.pop();
        y = p.top();
        p.pop();
        if (x == y)
          p.push(x + 1);
        else {
          p.push(y);
          p.push(x);
          break;
        }
      }
    }
    int k = 0;
    while (!p.empty()) {
      num[k++] = p.top();
      p.pop();
    }
    for (int i = k - 1; i >= 0; --i)
      if (i == k - 1)
        cout << num[i];
      else
        cout << " " << num[i];
    cout << endl;
  }
}
