#include<bits/stdc++.h>
using namespace std;
long long n;
long long a[10000000],s,flag=1;
bool z(long long n){
for(long long i=2;i<n;i++){
if(n%i==0) return false;
}
return true;
}
int main(){
cin>>n;
if(n==1){
cout<<1;
return 0;
}else if(n==0){
cout<<0;
return 0;
}
for(long long i=2;i<=n;i++){
if(n<=1){
break;
}
if(n%i==0){
if(z(i)){
s=0;
while(n%i==0) n/=i,s++;
if(flag==1) flag=0;
else cout<<" * ";
if(s<=1) cout<<i;
else cout<<i<<"^"<<s;
}
}
}
return 0;
}