#include <bits/stdc++.h>
int main() {
  int n, k, a[25], i, j, z, b;
  while (~scanf("%d %d", &n, &k)) {
    b = 1;
    z = 0;
    j = 2;
    for (i = 0; i < k;) {
      while (1) {
        if (n % j == 0) {
          n /= j;
          if (z < k - 1) {
            a[z++] = j;
            if (j <= 1) b = 0;
          } else {
            a[z++] = n * j;
          }
          j = 2;
          break;
        }
        j++;
        if (j > n) break;
      }
      i++;
    }
    if (z < k) b = 0;
    if (b) {
      for (i = 0; i < k; i++) {
        if (i == k - 1)
          printf("%d\n", a[i]);
        else
          printf("%d ", a[i]);
      }
    } else
      printf("%d\n", -1);
  }
  return 0;
}
