#include <bits/stdc++.h>
#pragma comment(linker, "/stack:16777216")
using namespace std;
class Solution {
 public:
  void solve(std::istream& in, std::ostream& out) {
    int i, n, j;
    const int NMAX = 5e5 + 1;
    int div[NMAX];
    memset(div, 0, sizeof div);
    in >> n;
    div[0] = NMAX * 2;
    div[1] = 1;
    for ((i) = (2); (i) < (n + 1); (i)++) {
      if (div[i]) continue;
      for (j = i; j <= n; j += i) {
        if (div[j]) continue;
        div[j] = j / i;
      }
    }
    sort(div, div + n + 1);
    for ((i) = 0; (i) < (n - 1); (i)++) out << div[i + 1] << " ";
    out << endl;
  }
};
void solve(std::istream& in, std::ostream& out) {
  out << std::setprecision(12);
  Solution solution;
  solution.solve(in, out);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  istream& in = cin;
  ostream& out = cout;
  solve(in, out);
  return 0;
}
