#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, k, i = 2;
  vector<int> primeDivisors;
  cin >> n >> k;
  while (n > 1) {
    while (n % i == 0) {
      primeDivisors.push_back(i);
      n /= i;
    }
    ++i;
  }
  if (primeDivisors.size() < k) return cout << -1 << endl, 0;
  for (i = 0; i < k - 1; ++i) cout << primeDivisors[i] << ' ';
  for (i = k - 1; i < primeDivisors.size(); ++i) n *= primeDivisors[i];
  cout << n << endl;
  return 0;
}
