#include <bits/stdc++.h>
using namespace std;
struct E {
  long long to, t1, t2;
};
signed main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long n;
  cin >> n;
  vector<long long> lp(n + 1), a(n - 1);
  for (long long i = 2; i <= n; i++) {
    a[i - 2] = i;
    lp[i] = i;
    for (long long j = 2; j * j <= n; j++) {
      if (i % j == 0) {
        lp[i] = j;
        break;
      }
    }
  }
  auto cmp = [&](long long i, long long j) { return i / lp[i] < j / lp[j]; };
  sort(a.begin(), a.end(), cmp);
  long long mx = 1;
  for (long long i = 0; i < n - 1; i++) {
    mx = max(mx, a[i] / lp[a[i]]);
    cout << mx << ' ';
  }
  return 0;
}
