#include <iostream>
#include <cmath>
typedef unsigned long long ulong;
void print_prime_factors(ulong n)
{
std::cout << n << ": ";
if (!n) { std::cout << "0 is not a composite number.\n"; return; }
ulong sqrt_n = sqrt(n);
for (ulong i=2; i<=sqrt_n && n!=1; ++i)
{
if (n%i==0) { std::cout << i << " "; }
while (n%i==0) { n /= i; }
}
if (n != 1) { std::cout << n; } //now n is a prime, must output it!
std::cout << "\n";
}
int main()
{
ulong n;
while (std::cin >> n) { print_prime_factors(n); }
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+Cgp0eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyB1bG9uZzsKCnZvaWQgcHJpbnRfcHJpbWVfZmFjdG9ycyh1bG9uZyBuKQp7CiAgICBzdGQ6OmNvdXQgPDwgbiA8PCAiOiAiOwogICAgaWYgKCFuKSB7IHN0ZDo6Y291dCA8PCAiMCBpcyBub3QgYSBjb21wb3NpdGUgbnVtYmVyLlxuIjsgcmV0dXJuOyB9CiAgICAKICAgIHVsb25nIHNxcnRfbiA9IHNxcnQobik7CiAgICBmb3IgKHVsb25nIGk9MjsgaTw9c3FydF9uICYmIG4hPTE7ICsraSkKICAgIHsKICAgICAgICBpZiAobiVpPT0wKSB7IHN0ZDo6Y291dCA8PCBpIDw8ICIgIjsgfQogICAgICAgIHdoaWxlIChuJWk9PTApIHsgbiAvPSBpOyB9CiAgICB9CiAgICBpZiAobiAhPSAxKSB7IHN0ZDo6Y291dCA8PCBuOyB9ICAvL25vdyBuIGlzIGEgcHJpbWUsIG11c3Qgb3V0cHV0IGl0IQogICAgCiAgICBzdGQ6OmNvdXQgPDwgIlxuIjsKfQoKaW50IG1haW4oKQp7CiAgICB1bG9uZyBuOwogICAgd2hpbGUgKHN0ZDo6Y2luID4+IG4pIHsgcHJpbnRfcHJpbWVfZmFjdG9ycyhuKTsgfQp9