func_code_string: #include <bits/stdc++.h>   using namespace std;   int main() {     long long n, temp;     cin >> n;     temp = n;     vector<pair<long long, int> > v;     for (int i = 2; i <= sqrt(n); i++) {       int count = 0;       while (temp % i == 0) {         temp /= i;         count++;       }       if (count != 0) v.push_back(make_pair(i, count));     }     long long num = 0, flag = 0;     if (temp != 1) v.push_back(make_pair(temp, 1));     if ((v.size() == 2 and v[0].second == 1 and v[1].second == 1) or         (v.size() == 1 and v[0].second == 2))       cout <<  2  << endl;     else {       cout <<  1 n ;       for (int i = 0; i < v.size(); i++) {         if (v[i].second > 2) {           num = v[i].first * v[i].first;           flag = 1;           break;         }       }       if (flag == 0 and v.size() >= 2) num = v[0].first * v[1].first;       cout << num << endl;     }     return 0;   }   