package logic;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import static java.lang.Integer.parseInt;
import static java.lang.System.in;
public class TheProductOfPrimeNumbers {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(in));
int num = parseInt(bf.readLine());
bf.close();
List<Integer> res = getIntegers(num);
if (res.isEmpty()) {
System.out.println("-1");
} else {
String collect = res.stream().map(String::valueOf).collect(Collectors.joining(","));
System.out.println(collect);
}
}
private static List<Integer> getIntegers(int num) {
List<Integer> res = new ArrayList<>();
double sqrt = Math.sqrt(num);
for (int i = 2; i <= sqrt; i++) {
if (!isPrime(i)) {
continue;
}
if (num % i != 0) {
continue;
}
if (!isPrime(num / i)) {
continue;
}
res.add(i);
res.add(num / i);
}
return res;
}
public static boolean isPrime(int num) {
if (num < 4) {
return num > 1;
}
double sqrt = Math.sqrt(num);
for (int i = 2; i <= sqrt; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
}