#include <bits/stdc++.h>
using namespace std;
const int inf = 1000 * 1000 * 1000;
const int mod = 1000 * 1000 * 1000 + 7;
const int maxn = 1000000;
int ans, a[maxn], p[10][maxn], flag, n, cnt[5], coun, mask, m;
void calc(int v, int cur) {
  if (v == m) {
    ++ans;
    if (flag) {
      cout << cur << ' ';
      if (ans == n) exit(0);
    }
    return;
  }
  if ((mask & (1 << v)))
    for (int i = 1; cur * 1ll * p[v][i] <= 2 * n * n; i++)
      calc(v + 1, cur * p[v][i]);
  else
    calc(v + 1, cur);
  return;
}
int main() {
  cin >> n;
  a[0] = 2;
  a[1] = 3;
  a[2] = 5;
  a[3] = 7;
  a[4] = 11;
  for (int i = 0; i < 5; i++) {
    p[i][0] = 1;
    for (int j = 1; j <= n; j++) {
      p[i][j] = p[i][j - 1] * a[i];
      if (p[i][j] >= 5 * n * n) break;
    }
  }
  for (m = 1; m <= 5; m++) {
    coun = 0;
    for (int i = 0; i < m; i++) cnt[i] = 0;
    for (mask = (1 << m) - 1; mask >= 0; mask--) {
      ans = 0;
      calc(0, 1);
      for (int j = 0; j < m; j++)
        if ((mask & (1 << j))) cnt[j] += min(ans, n - coun);
      coun += min(ans, n - coun);
    }
    if (coun == n) {
      bool ok = true;
      for (int i = 0; i < m; i++)
        if (cnt[i] < (n + 1) / 2) ok = false;
      if (ok) {
        flag = true;
        ans = 0;
        for (mask = (1 << m) - 1; mask >= 0; mask--) calc(0, 1);
      }
    }
  }
  return 0;
}
