#include #include using namespace std; using lint=int64_t; /* enumerate divisors */ #include template void div(vector &vec,T n) { for(T i=1;i*i<=n;i++) { if(n%i==0) { vec.push_back(i); if(/*i!=1 && */i*i!=n) vec.push_back(n/i); } } return; } int main() { lint N; lint ans=0; cin >> N; vector divs; div(divs,N); sort(divs.begin(),divs.end()); for(auto&& i:divs) { if(i!=2 && i!=1) { ans=i; break; } } cout << ans << endl; return 0; }