#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int n;
  cin >> n;
  int d = 2;
  int maxk = 0;
  int sand = 1;
  int saknis = n;
  while (sqrt(saknis) == (int)sqrt(saknis) && saknis != 1)
    saknis = sqrt(saknis);
  while (d <= sqrt(n)) {
    int k = 0;
    if (n % d == 0) {
      sand *= d;
    }
    while (n % d == 0) {
      ++k;
      n /= d;
    }
    maxk = max(maxk, k);
    ++d;
  }
  bool nelygu = false;
  if (n > 1) sand *= n;
  if (sand != saknis) nelygu = true;
  if (maxk == 0) {
    cout << n << " " << 0;
  } else {
    cout << sand << " " << ceil(log2(maxk)) + nelygu;
  }
  return 0;
}
