#include #include #include #include #include #include #include #include #include #include #include #include #include #define rep(i,j,k) for(int i=(int)j;i<(int)k;i++) #define itrep(i,x) for(auto i=(x).begin(); i!=(x).end();i++) #define Sort(x) sort((x).begin(),(x).end()) #define all(x) (x).begin(),(x).end() #define fi first #define se second #define vec vector #define INF (int)1e9 #define INFL 1e18 #define MOD 1000000007 #define pb push_back #define MP make_pair #define PI 3.1415926535 #define fcout cout< P; int D=1; int dx[4]={0,1,0,-1},dy[4]={-1,0,1,0}; int day[12]={31,28,31,30,31,30,31,31,30,31,30,31}; //templatevoid pp(T x){cout< void test(vector v){for(int i=0;i>n; ll ans=1; rep(i,1,sqrt(n)+1){ if(!isPrime(i))continue; int cnt=0; while(n%i==0){ cnt++; n/=i; } if(cnt%2==1)ans*=i; } cout<