1 /**
2 Create By yzx - stupidboy
3 */
4 #include <cstdio>
5 #include <cstring>
6 #include <cstdlib>
7 #include <cmath>
8 #include <deque>
9 #include <vector>
10 #include <queue>
11 #include <iostream>
12 #include <algorithm>
13 #include <map>
14 #include <set>
15 #include <ctime>
16 #include <iomanip>
17 using namespace std;
18 typedef long long LL;
19 typedef double DB;
20 #define MIT (2147483647)
21 #define INF (1000000001)
22 #define MLL (1000000000000000001LL)
23 #define sz(x) ((int) (x).size())
24 #define clr(x, y) memset(x, y, sizeof(x))
25 #define puf push_front
26 #define pub push_back
27 #define pof pop_front
28 #define pob pop_back
29 #define ft first
30 #define sd second
31 #define mk make_pair
32
33 inline int Getint()
34 {
35 int Ret = 0;
36 char Ch = ' ';
37 bool Flag = 0;
38 while(!(Ch >= '0' && Ch <= '9'))
39 {
40 if(Ch == '-') Flag ^= 1;
41 Ch = getchar();
42 }
43 while(Ch >= '0' && Ch <= '9')
44 {
45 Ret = Ret * 10 + Ch - '0';
46 Ch = getchar();
47 }
48 return Flag ? -Ret : Ret;
49 }
50
51 int n;
52
53 inline void Input()
54 {
55 cin >> n;
56 }
57
58 inline void Solve()
59 {
60 n--;
61 vector<int> ans;
62 for(int i = 1; i <= n; i++)
63 {
64 if(n / i < i) break;
65 if(n % i == 0)
66 {
67 ans.pub(i);
68 if(n / i != i) ans.pub(n / i);
69 }
70 }
71 sort(ans.begin(), ans.end());
72 int length = sz(ans);
73 for(int i = 0; i < length; i++)
74 printf(i < length - 1 ? "%d " : "%d\n", ans[i]);
75 }
76
77 int main()
78 {
79 Input();
80 Solve();
81 return 0;
82 }