#include<bits/stdc++.h>
using namespace std;
int cnt;
int tmp[150];
int main()
{
int n,k;
cin>>n>>k;
int n_sqrt = sqrt(n);
for(int i=2;i<=n_sqrt;i++)
{
if(n%i==0)//
{
while(n%i==0)
{
n/=i;
tmp[++cnt]=i;
}
}
}
if(n!=1){
tmp[1]=1;
tmp[2]=n;
cnt=2;
}
int sum=0;
for(int i=1;i<=cnt;i++)
sum+=tmp[i];
if(sum>k){
cout<<-1<<endl;
return 0;
}
if(sum==k){
//cout<<1<<endl;
// cout<<cnt<<endl;
for(int i=1;i<=cnt;i++)
cout<<tmp[i]<<" ";
return 0;
}
if(sum<k){
//cout<<cnt<<endl;
//cout<<sum<<endl;
//cout<<k-sum+1<<endl;
cout<<cnt+(k-sum+1)-1<<endl;
for(int i=1;i<=cnt;i++)
cout<<tmp[i]<<" ";
for(int i=sum+1;i<=k;i++)
cout<<1<<" ";
}
return 0;
}