#include <iostream>
#include <map>
using namespace std;
int main() {
int n;
cin >> n;
printf("%d=", n);
if (n==1)
{
printf("1\n");
}
else
{
int tmp = n;
map<int, int> ans;
for (int i = 2; i <= tmp; )
{
if (tmp % i == 0)
{
ans[i]++;
tmp /= i;
}
else
{
i++;
}
}
for (auto iter = ans.begin(); iter != ans.end(); iter++)
{
if (iter != ans.begin())
{
printf("*");
}
if (iter->second == 1)
{
printf("%d", iter->first);
}
else
{
printf("%d^%d", iter->first, iter->second);
}
}
}
return 0;
}