#include <iostream>
#include <math.h>
using namespace std;
bool isPrime(long num)
{
if(num==1||num==2)
{
return false;
}
else{
for(long i=2;i<sqrt(num);i++)
{
if(num%i==0)
{
return false;
}
}
return true;
}
}
int main()
{
long input=0;
bool res =true;
long max=0;
cin>>input;
for(long i=2;i<=input;i++)
{
if(isPrime(i)){
if(input%i==0){
input/=i;
if(i>max)
{
max=i;
}
}
}
}
cout<<max<<endl;
return 0;
}