/*
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
void find_factor(int arr1[], int arr2[], int n,int sz)
{
    while (sz)
    {
        if (n % (*arr1) == 0)
        {
            *arr2 = *arr1;
            arr2++;
        }
        arr1++;
        sz--;
    }
}
int compare_int(const void* e1, const void* e2)
{
    return (*(int*)e1) - (*(int*)e2);
}
int main()
{
    int arr1[] = { 2,3,7 };
    int arr2[3] = { 0 };
    int arr3[3] = {0,0,0};
    int n = 0;
    scanf("%d", &n);
    int sz = sizeof(arr1) / sizeof(arr1[0]);
    find_factor(arr1, arr2, n,sz);
    qsort(arr2, 3, sizeof(int), compare_int);
    int i = 0;
    for (i = 0; i < 3; i++)
    {
        if(arr2[i] != 0)
        {
        printf("%d ", arr2[i]);
        }
    }
    if(memcmp(arr2,arr3,12) == 0)
    {
        printf("n\n");
    }
    return 0;
}
*/

#include <stdio.h>
#include<stdlib.h>
void find_factor(int arr1[], int arr2[], int n, int sz)
{
    while (sz)
    {
        if (n % (*arr1) == 0)
        {
            *arr2 = *arr1;
            arr2++;
        }
        arr1++;
        sz--;
    }
}
int compare_int(const void* e1, const void* e2)
{
    return (*(int*)e1) - (*(int*)e2);
}
int main()
{
    int arr1[] = { 2,3,7 };
    int arr2[3] = { 0 };
    int n = 0;
    scanf("%d", &n);
    int sz = sizeof(arr1) / sizeof(arr1[0]);
    find_factor(arr1, arr2, n, sz);
    qsort(arr2, 3, sizeof(int), compare_int);//升序排序
    int i = 0;
    int count = 0;//记录符合要求的因素个数
    for (i = 0; i < 3; i++)
    {
        if (arr2[i] != 0)
        {
            printf("%d ", arr2[i]);
            count++;
        }
    }
    if (count == 0)
    {
        printf("n\n");
    }
    return 0;
}