#include <bits/stdc++.h>
using namespace std;
const int inf = (int)(1e9);
const int mod = inf + 7;
const double pi = acos(-1.0);
const double eps = 1e-9;
const int base = 1000 * 1000 * 1000;
string conversation(int n, int k) {
  string res = "";
  if (n == 0)
    res = "0";
  else {
    while (n != 0) {
      res = (char)(n % 10 + 48) + res;
      n /= 10;
    }
  }
  if (k != 0)
    while (res.length() < 9) res = "0" + res;
  return res;
}
bool first(string second, string t) {
  if (second.length() > t.length()) return true;
  if (second.length() == t.length())
    if (second >= t) return true;
  return false;
}
string del_chastnoe(string second, int b) {
  vector<int> a;
  for (int i = (int)second.length(); i > 0; i -= 9)
    if (i < 9)
      a.push_back(atoi(second.substr(0, i).c_str()));
    else
      a.push_back(atoi(second.substr(i - 9, 9).c_str()));
  int carry = 0;
  for (int i = (int)a.size() - 1; i >= 0; --i) {
    long long cur = a[i] + carry * 1ll * base;
    a[i] = int(cur / b);
    carry = int(cur % b);
  }
  while (a.size() > 1 && a.back() == 0) a.pop_back();
  string res = "";
  res += conversation(a[(int)a.size() - 1], 0);
  for (int i = a.size() - 2; i >= 0; --i) {
    res += conversation(a[i], 9);
  }
  return res;
}
string multiply(string second, string t) {
  vector<int> a, b;
  for (int i = (int)second.length(); i > 0; i -= 9)
    if (i < 9)
      a.push_back(atoi(second.substr(0, i).c_str()));
    else
      a.push_back(atoi(second.substr(i - 9, 9).c_str()));
  for (int i = (int)t.length(); i > 0; i -= 9)
    if (i < 9)
      b.push_back(atoi(t.substr(0, i).c_str()));
    else
      b.push_back(atoi(t.substr(i - 9, 9).c_str()));
  vector<int> c(a.size() + b.size());
  for (size_t i = 0; i < a.size(); ++i)
    for (int j = 0, carry = 0; j < (int)b.size() || carry; ++j) {
      long long cur =
          c[i + j] + a[i] * 1ll * (j < (int)b.size() ? b[j] : 0) + carry;
      c[i + j] = int(cur % base);
      carry = int(cur / base);
    }
  while (c.size() > 1 && c.back() == 0) c.pop_back();
  string res = "";
  res += conversation(c[(int)c.size() - 1], 0);
  for (int i = c.size() - 2; i >= 0; --i) {
    res += conversation(c[i], 9);
  }
  return res;
}
vector<long long> v;
int n;
bool check(long long n) {
  if (n == 1) return false;
  for (int i = 2; i * i <= n; i++) {
    if (n % i == 0) return false;
  }
  return true;
}
string toString(long long n) {
  if (n == 0) return "0";
  string ans = "";
  while (n) {
    ans = (char)(n % 10 + 48) + ans;
    n /= 10;
  }
  return ans;
}
int main() {
  cin >> n;
  if (n == 2) {
    cout << -1;
    return 0;
  }
  for (int i = 2;; i++) {
    if ((int)v.size() == n) break;
    if (check(i)) {
      v.push_back(i * 1ll);
    }
  }
  string p = "1";
  for (int i = 0; i < n; i++) p = multiply(toString(v[i]), p);
  for (int i = 0; i < n; i++) {
    cout << del_chastnoe(p, v[i]) << endl;
  }
  return 0;
}
