#include <cstdio>

using namespace std;

int sol[110],v[1000010];
char vaz[1000010];

int main()
{
    //freopen("file.in", "r", stdin);
    int n,nr=0,nr1=0;
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
        if(!vaz[i])
        {
            sol[++nr]=i;
            int lim=nr1;
            v[++nr1]=i;
            for(int j=1;j<=lim;j++)
                if(v[j]+i<=n && !vaz[v[j]+i])
                {
                    vaz[v[j]+i]=1;
                    v[++nr1]=v[j]+i;
                }
        }
    printf("%d\n",nr);
    for(int i=1;i<=nr;i++) printf("%d ",sol[i]);
    return 0;
}