#include <bits/stdc++.h>
using namespace std;
const int MAXN = 50;
const int MAXT = 1000;
vector<int> p;
bool r[MAXT];
vector<int>& operator*=(vector<int>& a, int d) {
  int i;
  int t, k = 0;
  for (i = 0; i < a.size() || k; ++i) {
    if (i == a.size()) a.push_back(0);
    t = a[i] * d + k;
    a[i] = t % 10;
    k = t / 10;
  }
  while (a.size() > 1 && a.back() == 0) a.pop_back();
  return a;
}
int main() {
  int n, i, j;
  cin >> n;
  if (n == 2) {
    cout << -1;
    return 0;
  }
  memset(r, true, sizeof(r));
  for (i = 2; i < MAXT; ++i) {
    if (p.size() == n) break;
    if (r[i]) {
      p.push_back(i);
      for (j = i + i; j < MAXT; j += i) r[j] = false;
    }
  }
  vector<int> res;
  for (i = 0; i < n; ++i) {
    res.clear();
    res.push_back(1);
    for (j = 0; j < n; ++j) {
      if (i == j) continue;
      res *= p[j];
    }
    for (j = res.size() - 1; j >= 0; --j) cout << res[j];
    cout << endl;
  }
  return 0;
}
