#define _GLIBCXX_DEBUG #define rep(i, n) for (int i = 0; i < (int)(n); i++) #define ALL(v) v.begin(), v.end() typedef long long ll; template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; } template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return 1; } return 0; } #include <bits/stdc++.h> using namespace std; int main(){ int n; cin>>n; vector<ll> a={100003, 100019 ,100043 ,100049 ,100057 ,100069 ,100103 ,100109 ,100129}; vector<ll> b={1}; rep(i,9){ for(int j=i;j<9;j++){ b.push_back(a[i]*a[j]); } } sort(ALL(b)); cout<<b[n-1]<<endl; return 0; }