#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <algorithm>
#include <iostream>
#include <string>
#include <vector>
using namespace std;
bool pr[50001];
void sieve(int n)
{
memset(pr,0,sizeof(pr));
long i,j,k,l;
pr[1]=1;
for(i=4;i<=n;i+=2)
pr[i]=1;
for(i=3;i*i<=n;i+=2)
{
if(pr[i]==0)
{
for(j=i*i;j<=n;j+=2*i)
pr[j]=1;
}
}
}
main()
{
vector<long long>v;
sieve(50000);
long long n,m;
long long k;
long long i;
int j,t;
while(scanf("%lld",&m))
{
if(m==0)
return 0;
if(m<0)
{
n=m*-1;
}
else
n=m;
k=n;
for(i=2;i*i<=n;i++)
{
while(pr[i])
{
i++;
}
while(k%i==0)
{
k/=i;
v.push_back(i);
}
if(k==1)
break;
}
printf("%lld = ",m);
t=0;
if(m<0)
{
printf("-1");
t=1;
}
for(i=0;i<v.size();i++)
{
if(t!=0)
printf(" x ");
printf("%lld",v[i]);
t=1;
}
if(k!=1)
{
if(t!=0)
printf(" x ");
printf("%lld",k);
}
printf("\n");
v.clear();
}
return 0;
}
I2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPGNzdHJpbmc+CiNpbmNsdWRlIDxjc3RkbGliPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDxhbGdvcml0aG0+CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPHZlY3Rvcj4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKYm9vbCBwcls1MDAwMV07Cgp2b2lkIHNpZXZlKGludCBuKQp7CiAgICBtZW1zZXQocHIsMCxzaXplb2YocHIpKTsKICAgIGxvbmcgaSxqLGssbDsKICAgIHByWzFdPTE7CiAgICBmb3IoaT00O2k8PW47aSs9MikKICAgICAgICBwcltpXT0xOwogICAgZm9yKGk9MztpKmk8PW47aSs9MikKICAgIHsKICAgICAgICBpZihwcltpXT09MCkKICAgICAgICB7CiAgICAgICAgICAgIGZvcihqPWkqaTtqPD1uO2orPTIqaSkKICAgICAgICAgICAgICAgIHByW2pdPTE7CiAgICAgICAgfQogICAgfQp9CgptYWluKCkKewogICAgdmVjdG9yPGxvbmcgbG9uZz52OwogICAgc2lldmUoNTAwMDApOwogICAgbG9uZyBsb25nIG4sbTsKICAgIGxvbmcgbG9uZyBrOwogICAgbG9uZyBsb25nIGk7CiAgICBpbnQgaix0OwogICAgd2hpbGUoc2NhbmYoIiVsbGQiLCZtKSkKICAgIHsKICAgICAgICBpZihtPT0wKQogICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICBpZihtPDApCiAgICAgICAgewogICAgICAgICAgICBuPW0qLTE7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICAgICAgbj1tOwogICAgICAgIGs9bjsKICAgICAgICBmb3IoaT0yO2kqaTw9bjtpKyspCiAgICAgICAgewogICAgICAgICAgICB3aGlsZShwcltpXSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaSsrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHdoaWxlKGslaT09MCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgay89aTsKICAgICAgICAgICAgICAgIHYucHVzaF9iYWNrKGkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKGs9PTEpCiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgcHJpbnRmKCIlbGxkID0gIixtKTsKICAgICAgICB0PTA7CiAgICAgICAgaWYobTwwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBwcmludGYoIi0xIik7CiAgICAgICAgICAgICAgICB0PTE7CiAgICAgICAgICAgIH0KICAgICAgICBmb3IoaT0wO2k8di5zaXplKCk7aSsrKQogICAgICAgIHsKICAgICAgICAgICAgaWYodCE9MCkKICAgICAgICAgICAgICAgIHByaW50ZigiIHggIik7CiAgICAgICAgICAgIHByaW50ZigiJWxsZCIsdltpXSk7CiAgICAgICAgICAgIHQ9MTsKICAgICAgICB9CiAgICAgICAgaWYoayE9MSkKICAgICAgICB7CiAgICAgICAgICAgIGlmKHQhPTApCiAgICAgICAgICAgICAgICBwcmludGYoIiB4ICIpOwogICAgICAgICAgICBwcmludGYoIiVsbGQiLGspOwogICAgICAgIH0KICAgICAgICBwcmludGYoIlxuIik7CiAgICAgICAgdi5jbGVhcigpOwogICAgfQogICAgcmV0dXJuIDA7Cn0K