#include <bits/stdc++.h>
using namespace std;
void debug_out() { cerr << '\n'; }
template <typename Head, typename... Tail>
void debug_out(Head H, Tail... T) {
  cerr << ' ' << H;
  debug_out(T...);
}
const long long INF = 1e18;
const long long MOD = 1e9 + 7;
const int N = 5e5 + 5;
int P[N], D[N];
bool CMP(int i, int j) { return D[i] < D[j]; }
int main() {
  ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  mt19937 Rnd(time(0));
  int n;
  cin >> n;
  for (int i = 1; i <= n; i++) {
    P[i] = i;
    for (int j = i + i; j <= n; j += i) D[j] = i;
  }
  sort(P + 1, P + 1 + n, CMP);
  int mx = D[P[1]];
  for (int i = 2; i <= n; i++) {
    mx = max(mx, D[P[i]]);
    cout << mx << ' ';
  }
  cout << '\n';
  return 0;
}
