#include<cstdio>
using namespace std;
typedef long long ll;
ll n,sum1,sum2,i,j;
int main()
{
	scanf("%lld",&n);
	sum1=3;i=1;
	while(sum1<n)
	{
		sum2=5;j=1;
		while(sum1+sum2<n)
		{
			j++;
			sum2=5ll*sum2;
		}
		if(sum1+sum2==n)
		{
			printf("%lld %lld\n",i,j);
			return 0;
		}
		i++;
		sum1=3ll*sum1;
	}
	printf("-1\n");
	return 0;
}
#define _GLIBCXX_DEBUG
#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<(n);i++)
using ll = long long;
int main(){
    ll N,z,x,y;
    bool sw=0;
    cin >> N;
    ll a=0,b=0;
    for(ll i=1;i<=25;i++){
        for(ll j=1;j<=39;j++){
            //cout << pow(5,i)+pow(3,j) << endl;
            x=1;
            y=1;
            rep(ii,i){x*=5;}
            rep(jj,j){y*=3;}
            //cout << x+y << endl;
            //z=pow(5,i)+pow(3,j);
            z=x+y;
            if(z==N){
                sw=1;
                a=j;
                b=i;
                break;
                }
            //cout << sw << endl;
            //if(pow(5,i)+pow(3,j)==N){
            //    sw=1;
            //    a=j;
            //    b=i;
            //}
        }
    }
    
    if(sw){cout << a << " " << b << endl;}
    else{cout << -1 << endl;}
    
    return 0;
}