#include <bits/stdc++.h>
using namespace std;
vector<int> sp;
void get_prime() {
  int i = 2;
  sp.push_back(i++);
  while (sp.size() < 55) {
    bool is_prime = true;
    for (int j = 0; j < sp.size(); j++) {
      if (i % sp[j] == 0) {
        is_prime = false;
        break;
      }
    }
    if (is_prime) sp.push_back(i);
    i++;
  }
}
void mul(vector<int> &a, int x) {
  int c = 0;
  for (int i = 0; i < a.size(); i++) {
    a[i] = a[i] * x + c;
    c = a[i] / 10;
    a[i] %= 10;
  }
  while (c) {
    a.push_back(c % 10);
    c /= 10;
  }
}
int main() {
  int n;
  unsigned long long x = 1;
  cin >> n;
  if (n == 2) {
    cout << -1;
    return 0;
  }
  get_prime();
  for (int i = 0; i < n; i++) {
    vector<int> v;
    v.push_back(1);
    for (int j = 0, k = i; j < n - 1; j++) {
      mul(v, sp[k]);
      k = (k + 1) % n;
    }
    for (int j = v.size() - 1; j >= 0; j--) cout << v[j];
    cout << endl;
  }
  return 0;
}
