#include <bits/stdc++.h>
const int maxn = 1001000;
int a[maxn], cnt[maxn];
int main() {
  int n;
  scanf("%d", &n);
  int ans = 1, c = 0;
  for (int i = 2; i <= n / i; i++)
    if (n % i == 0) {
      ans *= i;
      cnt[++c] = 0;
      while (n % i == 0) cnt[c]++, n /= i;
    }
  if (n > 1) ans *= n, cnt[++c] = 1;
  int k = 0, f = 0, mx = 0, v = 1;
  for (int i = 1; i <= c; i++)
    if (cnt[i] > mx) mx = cnt[i];
  while (v < mx) v *= 2, k++;
  for (int i = 1; i <= c; i++) f |= v > cnt[i];
  printf("%d %d\n", ans, k + f);
  return 0;
}
