func_code_string: #include <bits/stdc++.h>   int prm[20] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53};   long long n, ans;   void find(int k, long long cnt, long long sum) {     int i;     if (sum > n) return;     if (sum == n && cnt < ans) ans = cnt;     for (i = 1; i <= 63; i++) {       if (ans / prm[k] < cnt) break;       cnt = cnt * prm[k];       find(k + 1, cnt, sum * (i + 1));     }   }   int main() {     while (scanf( %I64d , &n) != EOF) {       ans = 2e65;       find(0, 1, 1);       printf( %I64d n , ans);     }     return 0;   }   