#include <bits/stdc++.h>
using namespace std;
int main() {
  int n;
  cin >> n;
  int rt = sqrt(n);
  rt += 2;
  int mx = 1;
  map<int, int> factors;
  int ans = 1;
  for (int i = 2; i <= rt; i++) {
    if (n % i == 0) {
      int cnt = 0;
      while (n % i == 0) {
        cnt++;
        n /= i;
      }
      ans *= i;
      mx = max(mx, cnt);
      factors[i] = cnt;
    }
  }
  if (n != 1) {
    factors[n] = 1;
    ans *= n;
  }
  int needed = 0;
  for (auto it : factors) {
    if (it.second != mx) needed = 1;
  }
  int cp = mx;
  while (cp % 2 == 0) cp /= 2;
  if (cp != 1) needed = 1;
  for (int i = 1; mx > i; i *= 2) {
    needed++;
  }
  cout << ans << " " << needed << endl;
  return 0;
}
